The Transactor V8 04 1988 Jan

84
8/7/2019 The Transactor V8 04 1988 Jan http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 1/84 C o m p u t e r - G e n e r a t e d H o l o g r a p h y o t h C 6 C i r c l e s , E l i p s e s a n P o l y g o n s i M P r o j e c t o r U p d a t e a d d s H i d d e n L i n e R e m o v a B u t t e r f i e l d e x p l a i n s M S q u a r e R o o t s S u p p o r t i n g M o r e D i s k F o r m a t s u n d e r C P / M C P / M I / R e d i r e c t i o n T u r b o P r o c e s s o r f o C 6 B o o k o M R o u t i n e s M e r l i n C 1 2 8 A s s e m b l e r A m i g a S e c t i o n : T i n y W i n d o w M a n a g e r T w N e C o l u m n s A m i g a D i s p a t c h e s B e n c h m a r k M o d u l a - 2 D e p a r t m e n t s H A M o d e R a T r a c y t a k e s a i n - d e p t h l o o k G n G u r u s i G o o d G n u s A B S E x e c B a s e E d i t o r i a l , p g R e p l y M s g R e a d e r M a i l T h V i e w P o r t b L a r r y P h i l l i p s A C C E S S b y S t e v e A h l s t r o m B l i t t e r L a t e T h a n N e v e r N e w s L I N K T h I n c r e d i b l e H u n k S t r u c t u r e f r o m t h B l a c k L a g o o n D i r e c t o r i e s i M i n u t e s w i t h D O A c c e l e r a t o r ! G U R U N u m b e r s W e ' d L i k e T T h a n k l e s s T a s k s a n D u P r o c e s s e s P e r f o r m a n c e T e s t : M e d i u m S l o w G e r m a n F a s t R A w i t h T w W a i t S t a t e s A n n o u n c i n g T r a n s a c t o r f o t h A m i g a T h M a g a z i n e F o A m i g a P r o g r a m m e r s P r e m i e r e I s s u e t b r e l e a s e d J A N U A R Y 1 9 8 8

Transcript of The Transactor V8 04 1988 Jan

Page 1: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 1/84

C o m p u t e r - G e n e r a t e dH o l o g r a p h y o t h C 6

C i r c l e s , E l i p s e sa n P o l y g o n s i M

P r o j e c t o r U p d a t e a d d sH i d d e n L i n e R e m o v a

B u t t e r f i e l d e x p l a i n sM S q u a r e R o o t s

S u p p o r t i n g M o r e D i s kF o r m a t s u n d e r C P / M

C P / M I / R e d i r e c t i o n

T u r b o P r o c e s s o r f o C 6 B o o k o M R o u t i n e sM e r l i n C 1 2 8 A s s e m b l e r

A m i g a S e c t i o n :T i n y W i n d o w M a n a g e rT w N e C o l u m n sA m i g a D i s p a t c h e sB e n c h m a r k M o d u l a - 2

D e p a r t m e n t s

H A M o d eR a T r a c y t a k e s a i n - d e p t h l o o k

G n G u r u s i G o o d G n u s

A B S E x e c B a s e E d i t o r i a l , p g R e p l y M s g R e a d e r M a i lT h V i e w P o r t b L a r r y P h i l l i p sA C C E S S b y S t e v e A h l s t r o m

B l i t t e r L a t e T h a n N e v e r N e w s L I N KT h I n c r e d i b l e H u n k

S t r u c t u r e f r o m t h B l a c k L a g o o n

D i r e c t o r i e s i M i n u t e sw i t h D O A c c e l e r a t o r !

G U R U N u m b e r sW e ' d L i k e T

T h a n k l e s s T a s k s a n D u P r o c e s s e s

P e r f o r m a n c e T e s t :M e d i u m S l o w G e r m a nF a s t R A w i t hT w W a i t S t a t e s

A n n o u n c i n gT r a n s a c t o r f o t h A m i g aT h M a g a z i n e F o A m i g a P r o g r a m m e r s

P r e m i e r e I s s u e t b r e l e a s e dJ A N U A R Y 1 9 8 8

Page 2: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 2/84

T h P o t p o u r r i D i s kH e l p !

T h i s H E L P f u l u t i l i t y g i v e s y o i n s t a n tm e n u - d r i v e n a c c e s s t o t e x t f i l e sa t h t o u c h o k e w h i l e a n p r o g r a m i r u n n i n g !

L o a n H e l p e rH o m u c h i t h a t l o a n r e a l l y g o i n gt c o s t y o u ? W h i c h i n t e r e s t r a t ec a y o a f f o r d ? W i t h L o a n H e l p e r ,t h a n s w e r s a r a c l o s e a s y o u rf r i e n d l y 6 4 !

K e y b o a r dL e a r n i n g h o t p l a y t h p i a n o ?T h i s h a n d y e d u c a t i o n a l p r o g r a mm a k e s i e a s y a n f u t l e a r n t h n o t e s o t h e k e y b o a r d .

F i l e d u m pE x a m i n e y o u r d i s k f i l e s F A S T w i t ht h i s m a c h i n e l a n g u a g e u t i l i t y ,H a n d l e s s i f o r m a t s , i n c l u d i n g h e x ,d e c i m a l , C B a n t r u e A S C I I ,W o r d P r o a n S p e e d S c r i p t .

A n a g r a m sA n a g r a m s l e t s y o u n s c r a m b l ew o r d s f o c r o s s w o r d p u z z l e s a n t h l i k e . T h p r o g r a m u s e s r e c u rs i v e M s u b r o u t i n e f o m a x i m u ms p e e d a n e f f i c i e n c y .

L i f e

F A S T m a c h i n e l a n g u a g e v e r s i o no m a t h e m a t i c i a n J o h n H o r t o nC o n w a y ' s c l a s s i c s i m u l a t i o n . S e u y o u r o w ' c o l o n i e s ' a n w a t c ht h e m g r o w !

W a B a l l o o n sS h o o t d o w n t h o s e e v i l N a z i W a B a l l o o n s w i t h y o u r h a n d y A c m eC a n n o n ! D o n ' t l e t h e m g e a w a y !

V o G o o g o lA l a s t ! T h m a p h i l o s o p h e r ,H e l g a v o G o o g o l , b r i n g s h e o w b r a n d o w i s d o m t t h s m a l ls c r e e n ! I t h i s i ' A l ' , t h e n i j u s t a i n ' tn a t u r a l !

N e w sS a v e t h m o n e y y o s p e n d o t h o s e s u p e r m a r k e t t a b l o i d s t h i sp r o g r a m w i l l g e n e r a t e e q u a l l yc o n v i n c i n g h e a d l i n e c o p y f o f r e e !

W r T h u l t i m a t e i e a s y - t o - u s e d a t ab a s e p r o g r a m s . W R l e t s y o q u i c k l y a n s i m p l y c r e a t e , e x a mi n a n e d i t j u s t a b o u t a n y d a t a .C o m e s w i t h s a m p l e f i l e .

Q u i zT r i v i a f a n a t i c s a n s t u d e n t s a l i k ew i l l h a v e f u n w i t h t h i s p r o g r a m ,w h i c h g i v e s y o m u l t i p l e c h o i c et e s t s o m a t e r i a l y o u h a v e e t e r e d w i t h t h W R p r o g r a m .

A H A ! L a n d e rA H A I ' s g r e a t l u n a r l a n d e r p r o g r a m .U s e i t h e r j o y s t i c k o k e y b o a r d t c o m p e t e a g a i n s t y o u r s e l f o u t

o t h e r p l a y e r s , W a t c h o u f o s p a c e m i n e s !

B a t h E l v e sc u t e l i t t l e a r c a d e - s t y l e g a m e ;

c a p t u r e t h e l v e s i t h b a a q u i c k l y a y o c a b u d o n ' t g e t h g o o d e l f !

B l a c k j a c kT h m o s t f l e x i b l e b l a c k j a c k s i m u l at i o n y o u ' l l f i n d a n y w h e r e . S e u y o u r f a v o u r i t e r u l e v a r i a t i o n s f o d o u b l i n g , s u r r e n d e r i n g a n s p l i tt i n g t h e d e c k .

F i l e C o m p a r eW h i c h o t h o s e t w f i l e s y o j u s tc r e a t e d i t h m o s t r e c e n t v e s i o n ? W i t h t h i s g r e a t u t i l i t y y o u ' l ln e v e r b l e f t w o n d e r i n g .

G h o u l D o g sA r c a d e m a n i a c s l o o k o u t ! Y o u ' l ln e e d a l y o u r d e x t e r i t y t h a n d l et h i s w i c k e d j o y s t i c k - b u s t e r ! T h e s em a d o g - m o n s t e r s f r o m s p a c ea r e n o t f o n o v i c e s !

O c t a g o n sJ u s t t h t h i n g f o y o M e n s a t y p e s .O c t a g o n s i c h a l l e n g i n g p u z z l eo t h m i n d . F o u r l e v e l s o p l a y ,a n d a t o u g h ' m e m o r y ' v a r i a t i o nf o r e a l e x p e r t s !

B a c k s t r e e t sn i f t y a r c a d e g a m e , 1 O O % m

c h i n e l a n g u a g e , t h a t h e l p s y o l e a r n t h t y p e w r i t e r k e y b o a r dw h i l e y o p l a y ! U n l i k e a n t y p i n gp r o g r a m y o u ' v e s e e n !

A l t h a b o v e p r o g r a m s , j u s t $ 1 7 . 9 5 U S $ 1 9 . 9 5 C a n a d i a n . N o , n o t E A C H o t h a b o v e p r o g r a m s , A L o t h a b o v e p r o g r a m s , o s i n g l e d i s k , a c c e s s e di n d e p e n d e n t l y o f r o m m e n u , w i t h b u i l t - i n m e n u - d r i v e n h e l p a n f a s t - l o a d e r .

T h E N T I R E P O T P O U R R I C O L L E C T I O NJ U S T $ 1 7 . 9 5 U S ! !

S e O r d e r C a r d a C e n t e r

Page 3: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 3/84

V o l u m eI s s u e

B i t s a n P i e c e s . M B r e a kV e r i f y B u S n e a k y F i l e P r i n tI n t e r r u p t R o u t i n e M a n a g e m e n tA u t o - L i n e f e e d G e n e r a t i o n8 0 - C o l u m n T r i c k sS i m p l e R u l e s f o t h 1 2 1 5 7 1 S e e k - S t o p p e rC 1 2 8 I / I n c o m p a t i b i l i t yF u n c t i o n K e F i n a g l e rC u r s o r S a v e a n d R e s t o r eC L H i n tA m i g a D O S R o l l o d e x T o o lA m i g a B a s i c F a d e - i n

L e t t e r s 1 A d v e r t i s i n g I T h T Y a n s a c t o r W O R K S !C P / M I T h T . . i o w n e d o n w o u l d g e a

A m i g a m a g a z i n e !P r o g r a m L i s t i n g s F o A l M a c h i n e sT V a n s a c t o r C o n t i n u i n g E d u c a t i o n C o u r s eG E O S m i c e - a n d - l i t t l e - p i c t u r e s e n v i r o n m e n tC o m m o d o r e 1 5 2 6 B l u e sM a c r o A s s e m b l e r D e s i r e d

N e w s B R 7 T r a n s a c t o r f o t h A m i g aH a l f P r i c e U n t i l J a n u a r y 1 s t !

W a n t T S w i t c h !W a n t B o t h !

S u b s c r i p t i o n R e n e w a l s a n E n q u i r i e sM a i l O r d e r P r o d u c t s :T h 2 0 / 2 0 D e a lT Y a n s a c t o r S p e c i a l O f f e rT Y a n s a c t o r M a i l O r d e rW o r l d O f C o m m o d o r e S h o wN e E n g l a n d 1 9 8 7 C o m p u t e r F a i rR U 6 E m u l a t o r f o A m i g aC o m m o d o r e C r e a t i n g P r o d u c t L i s tN e U E D I T R e l e a s eC o m s p e c H a r d D r i v e f o A m i g a 1 0 0 0R O M D I S K w i t h H Y P E R B O O T f o t h C 6 M I D I I n t e r f a c e f o C 6 4 / 1 2 8 a n 6 4 G E O S U p g r a d e f o t h C l 2 8V i d e o D i g i t i z e r f o t h C 6 C 1 2 8 C P / M K i A e g i s " A r t P a k s " f o t h A m i g aG e n e a l o g y P r o g r a m f o t h 8 0 3 28 0 5 1 C r o s s A s s e m b l e r f o C 6 4 / 1 2 8O x x i C l a i m s B e n c h m a r k M

T r a n s B l o o p s . . G A F I L LG a r b a g e C o l l e c t o r R e v e a l e dI n s i d e V i e wC 1 2 8 P r o g r a m m e r ' s A i d F i S w i t c h a b l e R S - 2 3 2 I n t e r f a c eG e t t i n g A r o u n d W i t h G o g o D a n c e rA d d i n g A n a l o g R G t t h 1 9 0 2

1

T r a n s a c t o ro t a n A C l C l r e S S A n n o u n c i n g T V a n s a c t o r f o t h A m i g a !T e l e C o l u m n . 1 1 1 1 6 r O J G C t O r l 3 X t I n e v e r s i o n w i t h h i d d e n l i n e r e m o v a l - a n d m o r e . . . . l

C o m p u t e r - G e n e r a t e d H o l o g r a p h y 3 X * 5 S 3 » 2 v j r C l G S I O t f l G U u E a s y a n s w e r s t a t o u g h p r o g r a m m i n g p r o b l e m

I n S l d e C 1 2 8 C P / M A d s u p p o r t f o r v i r t u a l l y a n C P / M d i s k f o r m a t ! 4 C P / M 3 . 0 : P l U S R e d i r e C t i O I l D i v e r t i n g i n p u t a n o u t p u t w i t h G E a n P U 4 S q i l c i r e R O O t S i M J i B u t t e r f i e l d t e l l s h o - w i t h o u t f l o a t i n g p o i n t ! . . . . . . 5 P l a c e h o l d e r f o t h C 6 S h o r t c u r s o r s a v e a n r e s t o r e r o u t i n e s 5

R e v i e w s1 T u r b O P r O C e S S O r 6 5 C 8 1 6 - b a s e d e x p a n s i o n h a r d w a r e f o t h C 6 4 w i t h 6 4 K R A 5 2 M R o u t i n e s f o t h C 6 4 / 1 2 8 n e b o o k ^ c o m p u t e ! 5 O M e r l i n - l ^ O 6 5 0 2 m a c r o a s s e m b l e r d e v e l o p m e n t s y s t e m 5 4 B e n c h m a r k M o d u l a - 2 M o d u l a - 2 d e v e l o p m e n t s y s t e m f o t h A m i g a . 5

A m i g a S e c t i o nA m i g a D i S p a t C h e S J e r r y e x p l a i n s w h 0 1 M y r o n i s t i l l h i f a v o u r i t e j o y s t i c k . . 6 T i n y W i n d O W M a n a g e r C l e a n u p t h a t T i n y W i n d o w L i t t e r ! 7

L a r r y P h i l l i p s l o o k s a h o I B i n n o v a t i o n - m u l t i t a s k i n g ! 6 S t e v e A h l s t r o m l o o k s a t h b e s t A m i g a f r e e l y d i s t r i b u t a b l e s o f t w a r e D

-

i

N o t e : b e f o r e e n t e r i n g p r o g r a m s , s e " V e r i f i z e r " o p a g e 4

A B O U T T H C O V E R : T h s i m u l a t e d W o r k b e n c h w i n d o w s w e r e d o n e w i t ht h s a m e t y p e s e t t i n g e q u i p m e n t t h a t i u s e d t p r o d u c e t h r e s t o t h m a g a z i n e Q u a d e x 5 0 0 0 t y p e s e t t i n g s y s t e m w i t h a C o m p u g r a p h i c 8 4 0 0p h o t o t y p e s e t t e r . T h c o l o u r p i c t u r e i n t h l o w e r w i n d o w w a s d o n e o t h A m i g a b c a p t u r i n g t h e i m a g e f r o m t h f a m o u s " b o i n g " d e m o ( u s i n g " z s a v e i f f "f r o m M e r i d i a n S o f t w a r e ' s Z i n g ! p a c k a g e ) a n e d i t i n g i w i t h D e l u x e P a i n t I I T h p h o t o w a p r o d u c e d u s i n g P o l a r o i d P a l l e t t e s y s t e m a n " I m p r i n t " , a i n t e r f a c e a n d p r o g r a m f o t h A m i g a f r o m A m e r i c a n L i q u i d L i g h t , I n c . T h P o l a r o i d P a l l e t t e h a a i n t e r n a l C R a n e x p o s e s t h f i l m b d i s p l a y i n gd i f f e r e n t p a r t s o t h s c r e e n i m a g e i b l a c k a n w h i t e t h r o u g h s e r i e s o c o l o u r e d f i l t e r s . T h I m p r i n t s o f t w a r e l o a d s I F p i c t u r e f i l e s a n c o n t r o l s t h P o l a r o i d P a l l e t t e t t a k e t h e p i c t u r e s ( u s i n g s t a n d a r d 3 5 m m f i l m ) , a n g i v e sm a n y o p t i o n s t t h e u s e r f o c o n t r o l l i n g t h p r o c e s s . T h a n k s t C o m m o d o r eC a n a d a f o t h u s o t h P o l a r o i d P a l l e t t e a n I m p r i n t e q u i p m e n t .

T h T r a n s a c t o r J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 4: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 4/84

T r a n s a c t o rT h M a g a z i n e ( o C o K l o r e P r o g r c

E d i t o r - i n - C h i e fK a r l J . H . H i l d o n

P u b l i s h e rR i c h a r d E v e r s

T e c h n i c a l E d i t o rC h r i s Z a m a r a

S u b m i s s i o n s E d i t o rN i c k S u l l i v a n

C u s t o m e r S e r v i c eJ e n n i f e r R e d d y

C o n t r i b u t i n g W r i t e r sI a A d a mS t e v e A h l s t r o mD a v i d A r c h i b a l dA n t h o n y B e r t r a mP a u l B l a i rT i B o l b a c hN e a l B r i d g e sA n t h o n y B r y a n tJ i B u t t e r f i e l dD a l e A C a s t e l l oB e t t y C l a yJ o s e p h C a f f r e yT o m K . C o l l o p yR o b e r t V D a v i sE l i z a b e t h D e a lF r a n k E D i G i o i aC h r i s D u n nM i c h a e l J E r s k i n eJ a c k F a r r a hM a r k F a r r i sJ i F r o s tM i k l o s G a r a m s z e g h yE r i c G e r m a i nM i c h a e l T G r a h a mE r i c G u i g u e r eT h o m a s G u r l e yR J a m e s d G r a f fT i G r a n t h a mP a t r i c k H a w l e yA d a m H e r s tT h o m a s H e n r yJ o h n H o u g h t o nR o b e r t . H u e h nD a v i d J a n k o w s k iC l i f t o n K a r n e sL o m e K l a s s e n

J e s s e K n i g h tG r e g o r y K n o xD a v i d L a t h r o pJ a m e s A . L i s o w s k iR i c h a r d L u c a sS c o t t M a c l e a nS t e v e M c C r y s t a lS t a c y M c l n n i sC h r i s M i l l e rT e r r y M o n t g o m e r yR a l p h M o r r i l lD . J . M o r r i sM i c h a e l M o s s m a nB r y c e N e s b i t tG e r a l d N e u f e l dN o e l N y m a nM a t t h e w P a l c i cR i c h a r d P e r r i tL a r r y P h i l l i p sT e r r y P r i d h a mR a y m o n d Q u i r l i n gD o u g R e s e n b e c kR i c h a r d R i c h m o n dJ o h n W . R o s sD a S c h e i nE . J . S c h m a h lD a v i d S h i l o hD a r r e n J S p r u y tA u b r e y S t a n l e yD a v i d S t i d o l p hR i c h a r d S t r i n g e rA n t o n T r e u e n f e l sA u d r y s V i l k a sJ a c k W e a v e rG e o f f r e y W e l c hE v a n W i l l i a m s

P r o d u c t i o nA t t i c T y p e s e t t i n g L t d .

P r i n t i n gP r i n t e d i C a n a d a b

M a c L e a n H u n t e r P r i n t i n g

P r o g r a m L i s t i n g s I T r a n s a c t o rA l p r o g r a m s l i s t e d i T r a n s a c t o r w i l l a p p e a r a t h e y w o u l d o y o u r s c r e e n i U p p e r / L o w e r c a s em o d e . T o c l a r i f y t w p o t e n t i a l c h a r a c t e r m i x - u p s , z e r o e s w i l l a p p e a r a ' 0 a n t h l e t t e r " o w i l l o c o u r s e b i l o w e r c a s e . S e c o n d l y , t h e l o w e r c a s e ( T i s t r a i g h t l i n e a o p p o s e d t t h n u m b e rw h i c h h a a a n g l e d t o p .M a n y p r o g r a m s w i l l c o n t a i n r e v e r s e v i d e o c h a r a c t e r s t h a t r e p r e s e n t c u r s o r m o v e m e n t s , c o l o u r s , o f u n c t i o n k e y s . T h e s e w i l l a l s o b s h o w n e x a c t l y a s t h e y w o u l d a p p e a r o y o u r s c r e e n , b u t t h e y ' r el i s t e d h e r e f o r e f e r e n c e . A l s o r e m e m b e r : ^ T R L - q w i t h i n q u o t e s i i d e n t i c a l t o a C u r s o r D o w n , e a l O c c a s i o n a l l y p r o g r a m s w i l l c o n t a i n l i n e s t h a t s h o w c o n s e c u t i v e s p a c e s . O f t e n t h n u m b e r o s p a c e sy o i n s e r t w i l l n o b c r i t i c a l t c o r r e c t o p e r a t i o n o t h p r o g r a m . W h e n i i s t h e r e q u i r e d n u m b e r o s p a c e s w i l l b s h o w n . F o e x a m p l e :

p r i n t " f l u s h r i g h t " - w o u l d b e s h o w n a p r i n t " [ 1 0 s p a c e s ] f l u s h r i g h t "

C u r s o r C h a r a c t e r s F o r P E C B V I 6 D o w nU - R i g h t - I L e f t j L f t ]R V R V S O f f -

I n s e r tD e l e t eC l e a r S c r n -H o m eS T O P

C o l o u r C h a r a c t e r s F o r V I 6 B l a c k -W h i t e -R e - C y a n [ C y n ]P u r p l e - [ P u r ]G r e e n - | B l u eY e l l o w - [ Y e l ]

F u n c t i o n K e y s F o V I 6 F 5 F 6 F 7 F 8

P l e a s e N o t e : T r a n s a c t o r ' sp h o n e n u m b e r i s ( 4 1 6 ) 7 6 4 - 5 2 7 3

C o m p u S e r v e A c c o u n t sC o n t a c t u a n y t i m e o G C B M P R G , G C B M C O M , o E a s y P l e x a t

K a r l J . H . H i l d o n 7 6 7 0 3 , 4 2 4 2C h r i s Z a m a r a 7 6 7 0 3 , 4 2 4 5N i c k S u l l i v a n 7 6 7 0 3 , 4 3 5 3

T r a n s a c t o r i p u b l i s h e d b i - m o n t h l y b T r a n s a c t o r P u b l i s h i n g I n c . , 8 5 W e s t W i l m o t S t r e e t , U n i t 1 0 R i c h m o n d H i l l , O n t a r i o , L 4 1 K 7 . C a n a d i a n S e c o n d C l a s s m a i l r e g i s t r a t i o n n u m b e r 6 3 4 2 . U S P S 7 2 5 -0 5 0 , S e c o n d C l a s s p o s t a g e p a i d a B u f f a l o , N Y f o U . S . s u b s c r i b e r s . U . S . P o s t m a s t e r s : s e n d a d d r e s sc h a n g e s t T r a n s a c t o r , P . O . B o 3 3 8 , S t a t i o n C B u f f a l o , N Y , 1 4 2 0 9 I S S N * 0 8 2 7 - 2 5 3 0 .T r a n s a c t o r i i n w a c o n n e c t e d w i t h C o m m o d o r e B u s i n e s s M a c h i n e s L t d . o C o m m o d o r e I n c o r p o r a t e d .C o m m o d o r e a n C o m m o d o r e p r o d u c t n a m e s ( P E T , C B M , V I C , 6 4 , 1 2 8 , A m i g a ) a r e r e g i s t e r e d t r a d e m a r k s o C o m m o d o r e I n c .

S u b s c r i p t i o n s :C a n a d a $ 1 C d n . U . S . A . $ 1 U S A l o t h e r $ 2 U S

A i r M a i l ( O v e r s e a s o n l y ) $ 4 U S ( $ 4 . 1 5 p o s t a g e / i s s u e )S e n d a l s u b s c r i p t i o n s t o : T r a n s a c t o r , S u b s c r i p t i o n s D e p a r t m e n t , 8 W e s t W i l m o t S t r e e t , U n i t 1 0 R i c h m o n d H i l l , O n t a r i o , C a n a d a , L 4 1 K 7 , 4 1 6 7 6 5 2 7 3 . N o t e : . S u b s c r i p t i o n s a r e h a n d l e d a t t h i s a d d r e s sO N L Y . S u b s c r i p t i o n s s e n t t o u B u f f a l o a d d r e s s ( a b o v e ) w i l l b f o r w a r d e d t o u R i c h m o n d H i l l H Q F o b e s t r e s u l t s , u s p o s t a g e p a i d c a r d a c e n t e r o m a g a z i n e .

Q u a n t i t y O r d e r s :I C a n a d a :I n g r a m S o f t w a r e L t d .1 4 A d e s s o D r i v eC o n c o r d , O n t a r i oL 4 K 2 W 7( 4 1 6 ) 7 3 8 - 1 7 0 0

I t h U . S . A . :I P ( I n t e r n a t i o n a l P e r i o d i c a l D i s t r i b u t o r s )1 1 7 6 0 - B S o r r e n t o V a l l e y R o a d

S a D i e g o , C a l i f o r n i a9 2 1 2 1 ( 6 1 9 ) 4 8 1 - 5 9 2 8A s f o D a v e B r u e s c h e r

S O L D O U T : T h B e s t o T h T r a n s a c t o r V o l u m e s 3 V o I s s u e s 0 3 , 0 4 , 0 5 , 0 6 , a n V o l 5 I s s u e s 0 2 ,0 3 , 0 4 a r a v a i l a b l e o m i c r o f i c h e o n l y

S t i l l A v a i l a b l e : V o l . 4 : 0 1 , 0 2 . V o l . 5 : 0 1 , 0 4 , 0 5 , 0 6 . V o l . 6 : 0 1 , 0 2 , 0 3 , 0 4 , 0 5 , 0 6 .V o l . 7 0 1 0 2 , 0 3 , 0 4 , 0 5 . 0 6 . V o l . 8 : 0 1 , 0 2 , 0 3 , 0 4

B a c k I s s u e s : $ 4 . 5 0 e a c h . O r d e r a l b a c k i s s u e s f r o m R i c h m o n d H i l l H Q E d i t o r i a l c o n t r i b u t i o n s a r a l w a y s w e l c o m e . M i n i m u m r e m u n e r a t i o n i $ 4 p e p r i n t e d p a g e . P r e f e r r e dm e d i a a r 1 5 4 1 , 2 0 3 1 , 4 0 4 0 , 8 0 5 0 , 8 2 5 0 , 1 5 7 1 , o 1 5 8 1 d i s k e t t e s w i t h W o r d P r o , P a p e r C l i p , P o c k e t W r i t e r ,W o r d C r a f t , S u p e r s c r i p t , ( a c t u a l l y , j u s t a b o u t a n y w o r d p r o c e s s o r f i l e s ) o S E t e x t f i l e s , o A m i g a f o r m a t 3 ' / 2d i s k e t t e s w i t h A S C I I t e x t f i l e s . P r o g r a m l i s t i n g s i n c l u d i n g B I T S s u b s m i s s i o n s o m o r e t h a n a f e w l i n e s s h o u l db p r o v i d e d o d i s k . M a n u s c r i p t s s h o u l d b t y p e w r i t t e n , d o u b l e s p a c e d , w i t h s p e c i a l c h a r a c t e r s o r f o r m a t sc l e a r l y m a r k e d . P h o t o s s h o u l d b g l o s s y b l a c k a n w h i t e p r i n t s . I l l u s t r a t i o n s s h o u l d b e o n w h i t e p a p e r w i t hb l a c k i n k o n l y .

A l l m a t e r i a l a c c e p t e d b e c o m e s t h p r o p e r t y o T r a n s a c t o r . A l m a t e r i a l i c o p y r i g h t b T r a n s a c t o rP u b l i c a t i o n s I n c . R e p r o d u c t i o n i a n f o r m w i t h o u t p e r m i s s i o n i i v i o l a t i o n o a p p l i c a b l e l a w s . S o l i c i t e dm a t e r i a l i a c c e p t e d o n a n a l r i g h t s b a s i s o n l y . W r i t e t t h R i c h m o n d H i l l a d d r e s s f o w r i t e r ' s p a c k a g e .T h o p i n i o n s e x p r e s s e d i c o n t r i b u t e d a r t i c l e s a r e n o t n e c e s s a r i l y t h o s e o T r a n s a c t o r . A l t h o u g h a c c u r a c y i a m a j o r o b j e c t i v e , T r a n s a c t o r c a n n o t a s s u m e l i a b i l i t y f o e r r o r s i a r t i c l e s o r p r o g r a m s . P r o g r a m s l i s t e d i T r a n s a c t o r , a n d / o r a p p e a r i n g o T r a n s a c t o r d i s k s , a r e c o p y r i g h t b T r a n s a c t o r P u b l i s h i n g I n c . a n m a n o b d u p l i c a t e d o r d i s t r i b u t e d w i t h o u t p e r m i s s i o n .

T h T r a n s a c t o r J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 5: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 5/84

T r a n s a c t o r f o t h A M I G AI n c h i n g T o w a r d T h M a g a z i n e R a c kl i k e a s k i n g g i r l o u f o t h f i r s t t i m e , w e ' r e g e t t i n g b a c k i n t o r e t a i l d i s t r i b u t i o n .C a u t i o u s l y , a n a f t e r m u c h r e h e a r s a l , w h a v e s t a r t e d o u r a p p r o a c h . . . a a p p r o a c h t h a t c o m e s o n l y a f t e r s e v e r a l m o n t h s o f i n v e s t i g a t i n g t h m e c h a n i c s o t h a t s t a t i o n a r y f i x t u r e k n o w n a s " t h e m a g a z i n e r a c k " .F o t h o s e w h s u b s c r i b e d b a s e d o o u l a n d m a r k d e c i s i o n t g o f t h n e w ss t a n d s , p l e a s e d o n ' t f e e l t r i c k e d . A t h t i m e , w h a t d i w s i m p l y c o u l d n ' ta f f o r d t o c o n t i n u e . A n w a r b n m e a n s g e t t i n g b a c k i n t o " n e w s s t a n d "d i s t r i b u t i o n . W w o n ' t b a v a i l a b l e a t h g r o c e r y s t o r e , t h l o c a l v a r i e t y s t o r e o s m o k e s h o p , t h h o t e l c o n f e c t i o n e r y , o i t r a i n s t a t i o n s a n a i r p o r t s . I t ' s t h e s ep l a c e s t h a t a r t r u l y d e f i n e d a s " n e w s s t a n d " . p r i n t r u t c o v e r t h s h e l f s p a c ei a l t h o s e p l a c e s w o u l d b e f o u r o f i v e t i m e s o u r i m m e d i a t e o b j e c t i v e a n a n a t t e m p t t o t a c k l e s u c h a o b j e c t i v e w o u l d s e n d u s p i r a l l i n g r i g h t b a c k o u o t h d i s t r i b u t i o n b u s i n e s s t s q u a r e 1 C o m p u t e r s h o p s a n b o o k s t o r e s , o t h e o t h e r h a n d , a r k n o w n a m o n gp u b l i s h e r s a s " s i n g l e - c o p y " o u t l e t s . O u s i n g l e - c o p y s a l e s a l w a y s c a m e i a a r o u n d 1 0 0 % , a n d i w a t h n e w s s t a n d s a l e s t h a t r u i n e d o u a v e r a g e . T i m ea f t e r t i m e i c i t y a f t e r c i t y t h e s t o r y w a l w a y s h e a r i s " B t h t i m e g e t h e r e ,T r a n s a c t o r i s o l d o u t " . B u " t h e r e " w a a l w a y s t h i s b o o k s t o r e o t h a t c o m p u t e rs t o r e . W c o u l d b w r o n g , b u i t ' s b e c o m e a p p a r e n t t u t h a t T r a n s a c t o r r e a d e r sg e n e r a l l y d o n ' t g t t h n e w s s t a n d t g e t h e i r c o p y a n d , a l t h o u g h i t ' s n o i m p o s s i b l e t h a t T r a n s a c t o r w i l l s h o w u a o n o t w o t h m i l l i o n s o t h i s t y p eo o u t l e t , i t ' s h i g h l y u n l i k e l y t h a t t h d i s t r i b u t i o n w e ' r e s e e k i n g w i l l i n c l u d e t h e ma p r e m e d i t a t e d t a r g e t .W a r e , h o w e v e r , a c t i v e l y s e e k i n g p a t h w a y s t t h s i n g l e - c o p y t y p e o u t l e t s t h a t ,d i s w e l l f o u b e f o r e : W a l d e n b o o k s , B D a l t o n s t o r e s , C r o w n B o o k s , E n c o r eB o o k s , S o f t w a r e E t c e t e r a a n C o m p u t e r L a n d ; a n i C a n a d a W . H . S m i t h ,C l a s s i c B o o k s t o r e s , C o l e s a n L i c h t m a n ' s . W a l s o w a n t t s h i p t e v e r yc o m p u t e r s h o p o t h p l a n e t t h a t c a r r i e s C o m m o d o r e e q u i p m e n t .W e ' v e m a d e a r r a n g e m e n t s s f a w i t h c o u p l e o m a g a z i n e d i s t r i b u t o r s , a n d a n yr e t a i l e r y o k n o w i m o r e t h a n w e l c o m e t c o n t a c t t h e m d i r e c t l y . T h e i r n a m e sa r e o p p o s i t e o p a g e 2 I n e i t h e r i w i t h i n r e a s o n a b l e g e o g r a p h i c p r o x i m i t y , c a l l

B t h e t i m e t h i s e d i t i o n r e a c h e s y o w e m a y h a v e m o r e r e g i o n a l d i s t r i b u t o r st h a t w c a r e c o m m e n d .S o m e r e a d e r s h a v e t o l d u t h a t t h e y w o u l d n ' t s u b s c r i b e e v e n i t h e y c o u l d n ' t g e T r a n s a c t o r a n o t h e r w a y . A n u n f o r t u n a t e l y f o u t h e y ' v e k e p t t h e i r w o r d . B u e v e n m o r e u n f o r t u n a t e i t h f a c t t h a t t h i s p a g e 3 w i l l n o t r e a c h t h e m , e x c e p t ,p e r h a p s , b a c c i d e n t . B e c a u s e e v e n m o r e i m p o r t a n t t h a n t h i s d e v e l o p m e n t i t h e f o l l o w i n g n e w s s m a n y h a v e b e e n a n x i o u s l y a w a i t i n g .

A n n o u n c i n g T r a n s a c t o r f o r t h e A m i g a !A m i E X P O i N e Y o r k w a t h m o s t e l e c t r i c c o m p u t e r s h o w I ' v e b e e n t s i n c et h f i r s t W o r l d o C o m m o d o r e s h o w i T o r o n t o . N s h o r t a g e o a d r e n a l i n t h e r es t o r i e s o f " a l l - n i g h t e r s " f o r l a s t m i n u t e p r e p a r a t i o n s w e r e c o m m o n c o n v e r s a t i o n .E x h i b i t o r s a n a t t e n d e e s c a m e f r o m a f a a C a l i f o r n i a , V a n c o u v e r , G r e a t B r i t a i na n d G e r m a n y . O n r e p o r t h a a t t e n d a n c e f i g u r e s a 4 , 0 0 0 f o t h f i r s t d a y . h a m d o u b t s a f i r s t , b u w h e n s t o p p e d t c o n s i d e r t h a t t h s e m i n a r s w e r e f i l l e d t c a p a c i t y w h i l e a t h s a m e t i m e t h e e x h i b i t f l o o r w a p a c k e d t i g h t , 4 , 0 0 0 s e e m e dl i k e c o n s e r v a t i v e e s t i m a t e .

m a d e t h t r i p f o c o u p l e o r e a s o n s . J u s t s e e i n g t h s h o w w a s w e l l w o r t ht h e f f o r t , b u t s p r e a d i n g t h e w o r d a b o u t " T r a n s a c t o r f o t h A m i g a " b r o u g h to v e r w h e l m i n g r e a c t i o n s f r o m e v e r y o n e . I o n l y w e ' d h a s u b s c r i p t i o n f o r m s

w i t h u s E v e n t h s t a f f o o t h e r m a g a z i n e s e x h i b i t i n g a t h s h o w a g r e e d t h a th i g h - t e c h j o u r n a l f o t h A m i g a w a s o r e l y n e e d e d a n t h a t t h e y w e r e g l a d t s e u p r o d u c i n g o n w o n d e r i t h e y r e a l l y m e a n t i t

I y o o w m o d e m , c h a n c e s a r y o u ' r e a l r e a d y a w a r e o t h i s n e w s . W e ' v em a d e s i m i l a r a n n o u n c e m e n t s o n j u s t a b o u t e v e r y p o p u l a r o n l i n e s e r v i c e i N o r t h A m e r i c a i n c l u d i n g C o m p u S e r v e , P e o p l e L i n k , B I X , G E n i e , Q u a n t u m L i n ka n P u n t e r N e t .T e l a b o r a t e , T r a n s a c t o r f o t h A m i g a w i l l n o b a a l u n l i k e t h e o r i g i n a lT r a n s a c t o r . W i n t e n d t p u b l i s h a r t i c l e s o i n t e r e s t t o p r o g r a m m e r s a n dh o b b y i s t s w i t h a a p p e t i t e f o f a t - f r e e i n f o r m a t i o n t h a t d o e s n ' t l e a v e y o f e e l i n gh u n g r y a g a i n s h o r t t i m e a f t e r d i g e s t i n g i t s a m p l e o w h a t w i l l a p p e a r c o m eJ a n u a r y i o t h c o v e r o t h i s i s s u e ; h o w e v e r , d o n ' t t a k e t h e a r t i c l e t i t l e ss e r i o u s l y , a i t h a t n e e d b e s a i d . W h a v e l o t s o m a t e r i a l l i n e d u b u d i d n ' tk n o w i f i t w o u l d a l a p p e a r i t h p r e m i e r e i s s u e o i s o m e w o u l d e n d u p i t h s e c o n d i s s u e . S w t o o k t h e o p p o r t u n i t y t h a v e s o m e f u i n s t e a d .B t h w a y , i y o h a v e a i d e a f o a a r t i c l e , p l e a s e g e i t o u c h . W t a l k e d t s e v e r a l a u t h o r s a t h s h o w a n g a v e o u n u m b e r o w r i t e r k i t s . S o m e a l r e a d yh a a r t i c l e s a s s e m b l e d . . . a r t i c l e s t h a t w e r e d e c l i n e d b s o m e o t h e o t h e rm a g a z i n e s b e c a u s e t h e y w e r e " t o o t e c h n i c a l " . I o u o p i n i o n , t h e r e ' s n s u c ht h i n g a s " t o o t e c h n i c a l " , s i y o u ' r e i s i m i l a r s i t u a t i o n , o k n o w s o m e o n e w h i s s e n d u y o u r s t u f f o g i v e u s c a l l . k n o w w h e n i n v e s t t i m e i p r o j e c t t h a tg e t s s h e l v e d f o o n r e a s o n o a n o t h e r , a n t h e n f i n d u s f o t h a t w o r k l a t e r o n i t ' s l i k e g e t t i n g s o m e t h i n g f o n o t h i n g . I t h w o r k g e t s p u b l i s h e d , t h e n t h a t" s o m e t h i n g " u s u a l l y t u r n s i n t o m o n e y - a n d t h a t ' s n i c e !

c h a r t e r s u b s c r i p t i o n o f f e r w i l l b i e f f e c t u n t i l J a n u a r y 1 , 1 9 8 8 . . . a o f f e r t h a tw i l l n e v e r b r e p e a t e d . I c o m e s t H A L F t h r e g u l a r p r i c e a n w h o p p i n g 6 o f t h c o v e r p r i c e . S e N e w s B R a n t h s u c a r d f o m o r e . W e ' v e a d d r e s s e dm a n y r e a d e r c o m m e n t s a b o u t t h a d v a n t a g e s o b u y i n g a t h m a g a z i n e r a c ks u c h a g e t t i n g d a m a g e f r e e c o p i e s a n c o v e r w i t h o u t a u g l y m a i l i n g l a b e ls t u c k o i t S t a r t i n g w i t h t h i s i s s u e , a l " T A N " T - A " s u b s c r i b e r s w i l l r e c e i v et h e i r c o p i e s i w h a t o u p r i n t e r c a l l s " p o l y b a g " s u p e r m a r k e t t y p e w o r d f o

p i e c e o f p l a s t i c t h a t ' s h e r m e t i c a l l y s e a l e d o t h r e e s i d e s a r o u n d t h m a g .R e g a r d l e s s , i s h o u l d m e a n t h a t i a n d a m a g e o c c u r s , y o u ' l l b a b l e t o t o s s t h d a m a g e A N t h l a b e l r i g h t i n t o t h t r a s h , l e a v i n g f r e s h , c r i s p , g o o d - a s - s t o r e -b o u g h t T r a n s a c t o r i h a n d .N o t m e n t i o n e d a n y w h e r e e l s e i t h i s i s s u e a r o u t w i n c r e d i b l e a d v e r t i s i n go f f e r s a l s o i e f f e c t u n t i l J a n u a r y o n l y . A d r a t e s i n T r a n s a c t o r f o t h A m i g a m Wf o n o b t h s a m e a i t h o r i g i n a l T r a n s a c t o r . B u a d v e r t i s e r s w h t a k e o u s p a c e i t h p r e m i e r e i s s u e o f T - w i l l w a n t t k n o w a b o u t : 1 T h e D e e pD i s c o u n t D e a l f u l l 5 o f a d i o u f i r s t i s s u e , a n 2 T h D o u b l e E x p o s u r eD e a l t w a d f o t h p r i c e o f o n e . P l a c e a n a i t h D e c e m b e r i s s u e o T r a n s a c t o r a n g e t h s a m e s i z e a i t h P r e m i e r e I s s u e o T r a n s a c t o r f o t h

A m i g a , A B S O L U T E L Y F R E E ! A f i r s t g l a n c e t h i s a p p e a r s t b " 1 f o r 5 , f o 1 0 l o g i c , b u u n d e r p l a n 2 a d w i l l r e a c h C h r i s t m a s s h o p p e r s . A g a i n , i y o u ' r ei n t e r e s t e d , o k n o w s o m e o n e w h i s p l e a s e c a l l u s o o n . A l t h o u g h C h r i s t m a s i s t i l l a w h i l e a w a y , o u d e a d l i n e s a r r a p i d l y a p p r o a c h i n g a n t h p r e s s m a n w a i t sf o n o b o d y !L a s t l y , s o m e o y o m a b r e c a l l i n g p r e v i o u s e d i t o r i a l s w h e r e c i t e e n o r m o u sw o r k l o a d s c o u p l e d w i t h u n b e a r a b l e s c h e d u l e s a n s a y i n g , " y o u g u y s m u s t b ec r a z y a i o n m a w a s n ' t e n o u g h , n o y o u ' l l h a v e t w o ! " . W e l l / w e ' v e a l w a y sb e e n l i t t l e c r a z y , a n i y o t h i n k a o c c u p a t i o n a l e n v i r o n m e n t l i k e t h a t m i g h ts u i t y o u , w e ' r e c u r r e n t l y a c c e p t i n g r e s u m e s .

K a r l J . H . H i l d o n , E d i t o r i C h i e fT h T r a n s a c t o r J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 6: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 6/84

U s i n g " V E R I F I Z E R "T h T r a n s a c t o r ' s F o o l p r o o f P r o g r a m E n t r y M e t h o d

V E R I F I Z E R s h o u l d b r u b e f o r e t y p i n g i a n l o n g p r o g r a m f r o m t h p a g e s o T h T r a n s a c t o r . I w i l l l e y o c h e c k y o u r w o r k l i n e b l i n e a y o e n t e r t h p r o g r a m , a n c a t c h f r u s t r a t i n g t y p i n g e r r o r s . T h V E R I F IZ E c o n c e p t w o r k s b y d i s p l a y i n g t w o - l e t t e r c o d e f o e a c h p r o g r a ml i n e w h i c h y o c a c h e c k a g a i n s t t h e c o r r e s p o n d i n g c o d e i t h p r o g r a m l i s t i n g .

T h e r e a r f i v e v e r s i o n s o V E R I F I Z E R h e r e ; o n f o P E T / C B M s , V I o C 6 4 , P l u s 4 C 1 2 8 , a n B 1 2 8 . E n t e r t h e a p p l i c a b l e p r o g r a m a n R U i t I y o g e d a t a o c h e c k s u m e r r o r , r e - c h e c k t h p r o g r a m a n k e e pt r y i n g u n t i l a l g o e s w e l l . Y o s h o u l d S A V E t h p r o g r a m , s i n c e y o u ' l lw a n t t u s i e v e r y t i m e y o e n t e r o n o o u p r o g r a m s . O n c e y o u ' v eR U t h l o a d e r , r e m e m b e r t e n t e r N E t p u r g e B A S I C t e x t s p a c e .T h e n t u r n V E R I F I Z E R o w i t h :

S Y 6 3 t e n a b l e t h P E T / C B M v e r s i o n ( o f f : S Y 6 3 7 )S Y 8 2 t e n a b l e t h C 6 4 / V I C v e r s i o n ( o f f : S Y 8 3 1 )S Y 4 0 9 6 t e n a b l e t h e P l u s v e r s i o n ( o f f : S Y 4 0 9 9 )S Y 3 0 7 2 , 1 t e n a b l e t h C 1 2 8 v e r s i o n ( o f f : S Y 3 0 7 2 , 0 )B A N K 1 5 S Y 1 0 2 4 f o B 1 2 8 ( o f f : B A N K 1 5 S Y 1 0 2 7 )

O n c e V E R I F I Z E R i o n e v e r y t i m e y o p r e s s R E T U R N o p r o g r a ml i n e t w o - l e t t e r r e p o r t c o d e w i l l a p p e a r o t h e t o p l e f t o t h s c r e e n i r e v e r s e f i e l d . N o t e t h a t t h e s e l e t t e r s a r i u p p e r c a s e a n w i l l a p p e a r a g r a p h i c s c h a r a c t e r s u n l e s s y o a r i u p p e r / l o w e r c a s e m o d e ( p r e s ss h i f t / C o m m o d o r e o C 6 4 / V I C ) .

N o t e : I r e p o r t c o d e i m i s s i n g ( o " — " ) i m e a n s w e ' v e e d i t e d t h a tl i n e a t t h l a s t m i n u t e w h i c h c h a n g e s t h r e p o r t c o d e . H o w e v e r , t h i sw i l l o n l y h a p p e n o c c a s i o n a l l y a n u s u a l l y o n l y o R E s t a t e m e n t s .

W i t h V E R I F I Z E R o n j u s t e n t e r t h e p r o g r a m f r o m t h m a g a z i n e n o m a l l y , c h e c k i n g e a c h r e p o r t c o d e a f t e r y o p r e s s R E T U R N o l i n e . I t h c o d e d o e s n ' t m a t c h u p w i t h t h l e t t e r s p r i n t e d i t h b o b e s i d e t h el i s t i n g , y o u c a n r e - c h e c k a n c o r r e c t t h l i n e , t h e n t r a g a i n . I y o w i s h , y o c a L I S T a r a n g e o l i n e s , t h e n t y p e R E T U R N o v e r e a c h i s u c c e s s i o n w h i l e c h e c k i n g t h r e p o r t c o d e s a t h e y a p p e a r . O n c e t h p r o g r a m h a b e e n p r o p e r l y e n t e r e d , b s u r e t t u r n V E R I F I Z E R o f w i t ht h S Y i n d i c a t e d a b o v e b e f o r e y o u d o a n y t h i n g e l s e .

V E R I F I Z E R w i l l c a t c h t r a n s p o s i t i o n e r r o r s l i k e P O K E 5 2 3 8 1 , 0 i n s t e a do P O K E 5 3 2 8 1 , 0 . H o w e v e r , V E R I F I Z E R u s e s " w e i g h t e d c h e c k s u mt e c h n i q u e " t h a t c a b f o o l e d I y o t r h a r d e n o u g h ; t r a n s p o s i n g t w s e t s o f c h a r a c t e r s w i l l p r o d u c e t h s a m e r e p o r t c o d e b u t h i s s h o u l dn e v e r h a p p e n s h o r t o d e l i b e r a t e l y ( v e r i f i z e r c o u l d h a v e b e e n d e s i g n e dt b m o r e c o m p l e x , b u t t h e r e p o r t c o d e s w o u l d n e e d t b l o n g e r , a n u s i n g i w o u l d b m o r e t r o u b l e t h a n c h e c k i n g c o d e m a n u a l l y ) . V E R I F IZ E i g n o r e s s p a c e s , s y o m a a d o o m i t s p a c e s f r o m t h l i s t e dp r o g r a m a w i l l ( p r o v i d i n g y o d o n ' t s p l i t u k e y w o r d s ! ) . S t a n d a r dk e y w o r d a b b r e v i a t i o n s ( l i k e n i n s t e a d o n e x t ) w i l l n o a f f e c t t h V E R I F I Z E R r e p o r t c o d e .

T e c h n i c a l i n f o : V I C / C 6 4 V E R I F I Z E R r e s i d e s i t h c a s s e t t e b u f f e r , s i y o u ' r e u s i n g d a t a s e t t e b a w a r e t h a t t a p e o p e r a t i o n s c a n b ed a n g e r o u s t i t h e a l t h . A f a a c o m p a t i b i l i t y w i t h o t h e r u t i l i t i e s g o e s ,V E R I F I Z E R s h o u l d n ' t c a u s e a n p r o b l e m s s i n c e i w o r k s t h r o u g h t h B A S I C w a r m - s t a r t l i n k a n d j u m p s t t h o r i g i n a l d e s t i n a t i o n o t h l i n ka f t e r i t ' s f i n i s h e d . W h e n d i s a b l e d , i r e s t o r e s t h l i n k t o i t o r i g i n a lc o n t e n t s .

C C

L H D G O J A I

O I

C E H 0 J P H E L K

E D

K J L

B D G F K A I

E E O M M D C N O A G J E

M B

P E T / C B M V E R I F I Z E R ( B A S I C 2 . o 4 . 0 )1 r e m * d a t a l o a d e r f o r V e r i f i z e r 4 . 0 "1 r e p e v e r s i o n2 0 c s3 f o 6 3 t 7 5 4 : r e a d a : p o k e i , 4 0 c s c a : n e x t i5 0 6 i c s < > 1 5 5 8 0 t h e n p r i n t " * * * * * d a t a e r r o r * * * * * " : e n 7 r e s y 6 3 8 0 e n d1 0 0 :1 0 0 0 d a t a 7 6 , 1 3 8 , 2 , 1 2 0 , 1 7 3 , 1 6 3 , 2 , 1 3 3 , 1 4 41 0 1 0 d a t a 1 7 3 , 1 6 4 , 2 , 1 3 3 , 1 4 5 , 8 8 9 6 , 1 2 0 , 1 6 51 0 2 0 d a t a 1 4 5 , 2 0 1 , 2 , 2 4 0 , 1 6 , 1 4 1 , 1 6 4 , 2 , 1 6 51 0 3 0 d a t a 1 4 4 , 1 4 1 , 1 6 3 , 2 , 1 6 9 , 1 6 5 , 1 3 3 , 1 4 4 , 1 6 91 0 4 0 d a t a 2 , 1 3 3 , 1 4 5 , 8 8 9 6 8 5 , 2 2 8 , 1 6 5 , 2 1 71 0 5 0 d a t a 2 0 1 , 1 3 , 2 0 8 , 6 2 , 1 6 5 , 1 6 7 , 2 0 8 , 5 8 , 1 7 31 0 6 0 d a t a 2 5 4 , 1 , 1 3 3 , 2 5 1 , 1 6 2 , 0 , 1 3 4 , 2 5 3 , 1 8 91 0 7 0 d a t a 0 2 , 1 6 8 , 2 0 1 , 3 2 2 4 0 , 1 5 2 3 0 , 2 5 1 0 8 0 d a t a 1 6 5 , 2 5 3 , 4 1 3 , 1 3 3 , 2 5 4 , 3 2 2 3 6 ,1 0 9 0 d a t a 1 9 8 , 2 5 4 , 1 6 2 4 9 , 2 3 2 , 1 5 2 , 2 0 8 , 2 2 9 , 1 6 51 1 0 0 d a t a 2 5 1 , 4 1 1 5 2 4 , 1 0 5 , 1 9 3 , 1 4 1 , 0 , 1 2 81 1 1 0 d a t a 1 6 5 , 2 5 1 , 7 4 7 4 7 4 , 7 4 , 2 4 , 1 0 5 , 1 9 31 1 2 0 d a t a 1 4 1 , 1 , 1 2 8 , 1 0 8 , 1 6 3 , 2 , 1 5 2 , 2 4 , 1 0 11 1 3 0 d a t a 2 5 1 , 1 3 3 , 2 5 1 , 9

V I C / C 6 4 V E R I F I Z E R1 r e m * d a t a l o a d e r f o V e r i f i z e r "1 r e v i c / 6 4 v e r s i o n2 0 c s3 f o 8 2 t 9 5 8 : r e a d a : p o k e i , 4 0 c s = c a : n e x t i5 0 6 i c s < > 1 4 7 5 5 t h e n p r i n t " * * * * * d a t a e r r o r * * * * * " : e n 7 0 r e m s y 8 2 8 e n 1 0 0 :1 0 0 0 d a t a 7 6 , 7 4 , 3 , 1 6 5 , 2 5 1 , 1 4 1 , 2

3 3 9 6 , 1 7 3 , 3 1 7 , 1 3 3 , 2 5 2 , 1 7 3 , 2 9 9 , 1 4 1 , 2 3 , 1 6 9 ,9 6 , 1 7 3 , 2 5 4 , 1 , 1 3 3 ,

0 , 1 8 9 , 0 2 , 2 4 0 ,1 5 , 1 3 3 ,3 2 , 1 8 3 ,

7 6 , 7 4 ,1 0 1 0 d a t a 2 5 2 , 1 4 1 ,1 0 2 0 d a t a 3 , 2 4 0 ,1 0 3 0 d a t a 2 5 1 , 1 6 9 ,1 0 4 0 d a t a 3 , 3 ,1 0 5 0 d a t a 0 , 1 6 0 ,1 0 6 0 d a t a 3 2 , 2 4 0 ,1 0 7 0 d a t a 1 3 3 , 9 0 1 0 8 0 d a t a 2 3 2 , 2 0 8 , 2 2 9 , 5 6 1 0 9 0 d a t a 3 2 , 2 1 0 , 2 5 5 , 1 6 9 ,1 1 0 0 d a t a 8 9 4 1 1 5 2 4 , 1 0 5 ,1 1 1 0 d a t a 1 6 5 , 8 9 , 7 4 , 7 4 , 7 4 ,1 1 2 0 d a t a 3 2 2 1 0 , 2 5 5 , 1 6 9 , 1 4 6 ,1 1 3 0 d a t a 3 2 2 4 0 , 2 5 5 , 1 0 8 , 2 5 1 ,1 1 4 0 d a t a 1 0 1 , 8 9 , 1 3 3 , 8 9 9

3 , 1 6 53 , 2 0 13 , 1 3 33 , 1 4 1

8 9 , 1 6 22 2 2 0

9 1 , 2 0 0 , 1 5 2 , 4 1 3 , 1 9 8 , 9 0 1 6 , 2 4 93 2 , 2 4 0 , 2 5 5 , 1 6 9 , 1

1 8 3 2 , 2 1 0 , 2 5 5 , 1 6 59 7 3 2 , 2 1 0 , 2 5 57 4 2 4 , 1 0 5 , 9 3 2 2 1 0 , " 2 5 5 , 2

0 , 1 6 5 , 9 1 2

V I C / 6 4 D o u b l e V e r i f i z e r S t e v e n W a l l e y , S u n n y m e a d , C W h e n u s i n g ' V E R I F I Z E R ' w i t h s o m e T V s , t h u p p e r l e f t c o r n e r o t h s c r e e n i c u o f f , h i d i n g t h e v e r i f i z e r - d i s p l a y e d c o d e s . D O U B L E V E R IF I Z E R s o l v e s t h a t p r o b l e m b y s h o w i n g t h t w o - l e t t e r v e r i f i z e r c o d e o b o t h t h f i r s t a n s e c o n d r o o t h T s c r e e n . J u s t r u t h b e l o wp r o g r a m o n c e t h r e g u l a r V e r i f i z e r i a c t i v a t e d .

T h T r a n s a c t o r J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 7: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 7/84

K B D

G I

E K K F L

T O f o a 6 7 t 7 2 0 : r e a d d a : p o k e a d , d a : n e x t a 1 1 s y s 6 7 9 : p r i n t : p r i n t1 2 p r i n f d o u b l e v e r i f i z e r a c t i v a t e d a : n e w1 3 d a t a 1 2 0 , 1 6 9 , 1 8 0 , 1 4 1 , 2 0 1 4 d a t a 1 6 9 , 2 , 1 4 1 , 2 1 3 8 1 5 d a t a 9 6 1 6 2 , 0 , 1 8 9 , 0 , 2 1 61 6 d a t a 1 5 7 , 4 0 2 1 6 , 2 3 2 , 2 2 4 ,1 7 d a t a 2 0 8 , 2 4 5 , 1 6 2 , 0 , 1 8 9 ,1 8 d a t a 4 , 1 5 7 , 4 0 4 2 3 2 , 2 2 1 9 d a t a 2 , 2 0 8 , 2 4 5 , 7 6 4 9 , 2 3 4

V E R I F I Z E R F o T a p e U s e r s T o P o t t s , R o w l e y , M T h f o l l o w i n g m o d i f i c a t i o n s t t h V e r i f i z e r l o a d e r w i l l a l l o w V I C a n d 6 o w n e r s w i t h D a t a s e t t e s t u s t h V e r i f i z e r d i r e c t l y ( w i t h o u t t h e l o a d e r ) .A f t e r r u n n i n g t h n e l o a d e r , y o u ' l l h a v e s p e c i a l c o p y o t h V e r i f i z e rp r o g r a m w h i c h c a n b e l o a d e d f r o m t a p e w i t h o u t d i s r u p t i n g t h p r g r a m i m e m o r y . M a k e t h e f o l l o w i n g a d d i t i o n s a r i d c h a n g e s t t h V I C /6 V E R I F I Z E R l o a d e r :

N 3 f o r i 8 5 0 t o 9 8 0 : r e a d a : p o k e i , aA 6 i f c s < > 1 4 8 2 1 t h e n p r i n t " * * * * * d a t a e r r o r * * * * * 1 1 ; e n I 7 0 r e m s y s 8 5 0 o n s y s 8 5 3 o f

8 d e l e t e l i n e1 0 d e l e t e l i n e

O 1 0 0 0 d a t a 7 6 , 9 6 , 3 , 1 6 5 , 2 5 1 , 1 4 1 , 2 3 , 1 6 5M 1 0 3 0 d a t a 2 5 1 , 1 6 9 , 1 2 1 , 1 4 1 , 2 3 , 1 6 9 , 3 , 1 4 1E 1 0 7 0 d a t a 1 3 3 , 9 0 3 2 , 2 0 5 , 3 , 1 9 8 , 9 0 1 6 , 2 4 9B 2 0 0 0 a V e r i f i z e r . s y s 8 5 0 [ s p a c e ] "K 2 0 1 0 f o 8 5 t 9 8 G 2 0 2 0 a a c h r $ ( p e e k ( i ) ) : n e x tD 2 0 3 0 o p e n 1 , 1 , 1 , a $ : c l o s e

I 2 0 4 0 e n dN o R U N , p r e s s i n g P L A Y a n R E C O R D w h e n p r o m p t e d t d s ( u s er e w o u n d t a p e f o e a s y f u t u r e a c c e s s ) . T u s t h s p e c i a l V e r i f i z e r t h a th a j u s t b e e n c r e a t e d , f i r s t l o a d t h e p r o g r a m y o u w i s h t v e r i f y o r e v i e w i n t o y o u r c o m p u t e r f r o m e i t h e r t a p e o d i s k . N e x t i n s e r t t h e t a p ec r e a t e d a b o v e a n d b e s u r e t h a t i i r e w o u n d . T h e n e n t e r i n d i r e c tm o d e : O P E N 1 : C L O S E 1 . P r e s s P L A Y w h e n p r o m p t e d b y t h c o m p u t e r ,a n w a i t w h i l e t h e s p e c i a l V e r i f i z e r l o a d s i n t o t h t a p e b u f f e r . O n c el o a d e d , t h e s c r e e n w i l l s h o w F O U N D V E R I F I Z E R . S Y S 8 5 0 . T o a c t i v a t e ,e n t e r S Y 8 5 ( n o t t h 8 2 a i t h o r i g i n a l p r o g r a m ) . T d e - a c t i v a t e ,u s e S Y S 8 5 3 .

I y o a r g o i n g t u s t a p e t S A V E a p r o g r a m , y o u m u s t d e - a c t i v a t e( S Y S 8 5 3 ) s i n c e V E R I F I Z E R m o v e s s o m e o t h i n t e r n a l p o i n t e r s u s e dd u r i n g S A V E o p e r a t i o n . A t t e m p t i n g a S A V E w i t h o u t t u r n i n g o f V E R I F I Z E R f i r s t w i l l u s u a l l y r e s u l t i n c r a s h . I y o w i s h t u s V E R I F I Z E R a g a i n a f t e r u s i n g t h e t a p e , y o u ' l l h a v e t r e l o a d i w i t h t h O P E N : C L O S E c o m m a n d s .

P l u s V E R I F I Z E RN

P E N

J A N J I

P C O L E

1 0 0 0 r e m d a t a l o a d e r f o V e r i f i z e r 4 1 0 1 0 r e m c o m m o d o r e p l u s / 4 v e r s i o n1 0 2 0 g r a p h i c 1 s c n c l r : g r a p h i c 0 r e m a k e r o o m f o c o d e1 0 3 0 c 1 0 4 0 f o 4 0 9 6 t 4 2 1 6 : r e a d x p o k e j , x : c c x n e x t1 0 5 0 i c h < > 1 3 1 4 6 t h e n p r i n t " c h e c k s u m e r r o r " : s t o p1 0 6 0 p r i n t " s y s 4 0 9 6 : r e t e n a b l e "1 0 7 0 p r i n t " s y s 4 0 9 9 : r e t d i s a b l e "1 0 8 0 e n d1 0 9 0 d a t a 7 6 , 1 4 , 1 6 , 1 6 5 , 2 1 1 , 1 4 1 , 2 1 1 0 0 d a t a 1 6 5 , 2 1 2 , 1 4 1 , 3 3 9 6 , 1 7 3 , 31 1 1 0 d a t a 3 , 2 0 1 , 1 6 , 2 4 0 , 1 7 , 1 3 3 , 2 1 2 , 1 7 3

. 1 1 2 0 d a t a 2 3 , 1 3 3 , 2 1 1 , 1 6 9 , 3 9 , 1 4 1 , 21 1 3 0 d a t a 3 , 1 6 9 , 1 6 , 1 4 1 , 3 3 9 6 , 1 6 5

D L G D G C C P D B B

1 1 4 0 d a t a 2 0 1 1 5 0 d a t a 0 1 1 6 0 d a t a 1 7 6 ,1 1 7 0 d a t a 2 4 0 ,1 1 8 0 d a t a 2 0 0 ,1 1 9 0 d a t a 1 6 1 2 0 0 d a t a 1 6 5 ,1 2 1 0 d a t a 0 1 2 2 0 d a t a 2 4 1 2 3 0 d a t a 0 1 2 4 0 d a t a 9

1 3 3 , 2 0 8 , 1 6 22 , 2 0 1 , 4 3 2 3 2 , 2 0

2 2 , 2 0 1 , 3 1 5 2 , 4 1 1 9 8 . 2 0 9 , 1 2 0 8 , 4 1 1

1 2 , 1 6 5 , 2 0 81 0 5 , 1 9 3 , 1 4 11 6 5 . 2 1 0 , 2

0 f / 1 6 0 ,1 4 4 , 7 2 4 2 , 1 8 9 ,2 4 0 , 1 5 1 3 3 , 2 0 9 ,2 4 9 , 2 3 2 ,

2 4 , 1 0 5 ,7 4 7 4

1 1 2 1 0 1 , 2 0 8 ,

0 , 1 8 92 0 1 , 5

0 1 3 3 , 2 1 0

3 2 , 1 1 32 0 8 , 2 2 1 9 3 , 1 4 1

7 4 7 1 0 8 , 2 1 11 3 3 , 2 0 8

P A J N O J M A

I G M H L J E

K D J K E

C E A J C B P

C 1 2 8 V E R I F I Z E R ( 4 c o l u m n m o d e )1 0 0 0 r e m d a t a l o a d e r f o V e r i f i z e r 2 8 1 0 1 0 r e m c o m m o d o r e 2 v e r s i o n1 0 2 0 r e m u s i 4 c o l u m n m o d e o n l y !1 0 3 0 c 1 0 4 0 f o 3 0 7 2 t 3 2 1 4 : r e a d x p o k e j , x : c c x n e x t1 0 5 0 i c h < > 1 7 8 6 0 t h e n p r i n t " c h e c k s u m e r r o r " : s t o p1 0 6 0 p r i n t " s y s 3 0 7 2 , 1 : r e t e n a b l e "1 0 7 0 p r i n t " s y s 3 0 7 2 , 0 : r e t d i s a b l e "1 0 8 0 e n d

1 1 , 1 6 5 , 2 5 3 , 1 4 1 , 2 3 , 1 6 53 9 6 , 1 7 3 , 3

1 7 , 1 3 3 , 2 5 4 , 1 7 3 ,3 8 , 1 4 1 , 2

3 9 6 , 1 6 5 , 2 1 1 4 0 d a t a 1 3 3 , 2 5 0 , 1 6 2 , 0 , 1 6 0 , 0 , 1 8 9 , 01 1 5 0 d a t a 2 , 2 0 1 , 4 8 , 1 4 4 , 7 , 2 0 1 , 5 8 , ' 1 7 61 1 6 0 d a t a 3 , 2 3 2 , 2 0 8 , 2 4 2 , 1 8 9 , 0 2 r 2 4 01 1 7 0 d a t a 2 2 2 0 1 , 3 2 2 4 0 , 1 5 , 1 3 3 , 2 5 2 , 2 0 1 1 8 0 d a t a 1 5 2 , , 4 1 , 3 , 1 3 3 , 2 5 1 , 3 2 , 1 3 5 , 1 1 1 9 0 d a t a 1 9 8 , 2 5 1 , 1 6 2 4 9 , 2 3 2 , 2 0 8 , 2 2 9 , 5 1 2 0 0 d a t a 3 2 , 2 4 0 , 2 5 5 , 1 6 9 , 1 9 3 2 , 2 1 0 , 2 5 51 2 1 0 d a t a 1 6 9 , 1 8 3 2 , 2 1 0 , 2 5 5 , 1 6 5 , 2 5 0 , 4 1 2 2 0 d a t a 1 5 2 4 , 1 0 5 , 1 9 3 , 3 2 , 2 1 0 , 2 5 5 , 1 6 51 2 3 0 d a t a 2 5 0 , 7 4 , 7 4 , 7 4 , 7 4 , 2 4 , 1 0 5 , 1 9 31 2 4 0 d a t a 3 2 , 2 1 0 , 2 5 5 , 1 6 9 , 1 4 6 , 3 2 , 2 1 0 , 2 5 51 2 5 0 d a t a 2 4 3 2 , 2 4 0 , 2 5 5 , 1 0 8 , 2 5 3 , 0 , 1 6 51 2 6 0 d a t a 2 5 2 , 2 4 , 1 0 1 , 2 5 0 , 1 3 3 , 2 5 0 , 9 6

1 0 9 0 d a t a 2 0 8 ,1 1 0 0 d a t a 2 5 4 , 1 4 1 , 3 1 1 1 0 d a t a 2 0 1 , 1 2 , 2 4 0 ,1 1 2 0 d a t a 3 , 1 3 3 , 2 5 3 , 1 6 9 ,1 1 3 0 d a t a 1 6 9 , 1 2 , 1 4 1 , 3

B 1 2 8 V E R I F I Z E R E l i z a b e t h D e a l , M a l v e r n , P r e m s a v e " @ 0 : v e r i f i z e r b 1 2 8 " , 8

1 r e m * d a t a l o a d e r f o V e r i f i z e r b 1 2 8 "2 0 c s =3 b a n k 1 5 : f o r 1 0 2 4 t 1 1 6 3 : r e a d a : p o k e i , 4 0 c s = c a : n e x t i5 i c s < > 1 6 8 2 8 t h e n p r i n t " * * d a t a e r r o r * * " : e n 6 0 r e m b a n k 1 5 s y 1 0 2 47 e n 1 0 0 0 d a t a 7 6 1 4 4 , 1 6 5 , 2 5 1 , 1 4 1 , 1 3 0 / 2 , 1 6 5 , 2 5 21 0 1 0 d a t a 1 4 1 , 1 3 1 , 2 9 6 , 1 7 3 , 1 3 0 , 2 , 2 0 1 , 3 9 , 2 4 01 0 2 0 d a t a 1 7 , 1 3 3 , 2 5 1 , 1 7 3 , 1 3 1 , 2 , 1 3 3 , 2 5 2 , 1 6 9 , 3 1 0 3 0 d a t a 1 4 1 , 1 3 0 , 2 , 1 6 9 , 4 , 1 4 1 , 1 3 1 , 2 9 6 , 1 6 51 0 4 0 d a t a 1 7 2 , 1 6 2 , 1 , 1 3 4 , 1 , 2 0 2 , 1 6 5 , 2 7 , 1 3 31 0 5 0 d a t a 2 3 3 , 3 2 , 1 1 8 , 4 , 2 3 4 , 1 7 7 , 1 3 6 , 2 4 0 , 2 2 , 2 0 11 0 6 0 d a t a 3 2 2 4 0 , 1 5 , 1 3 3 , 2 3 5 , 2 3 2 , 1 3 8 , 4 1 3 , 1 3 31 0 7 0 d a t a 2 3 4 , 3 2 , 1 1 0 , 4 , 1 9 8 , 2 3 4 , 1 6 2 4 9 , 2 0 0 , 2 0 1 0 8 0 d a t a 2 3 0 , 1 6 5 , 2 3 3 , 4 1 , 1 5 , 2 4 , 1 0 5 , 1 9 3 , 1 4 1 ,1 0 9 0 d a t a 2 0 8 , 1 6 5 , 2 3 3 , 7 4 , 7 4 , 7 4 , 7 4 , 2 4 , 1 0 5 , 1 9 31 1 0 0 d a t a 1 4 1 , 1 , 2 0 8 , 2 4 , 1 0 4 , 1 3 3 , 1 , 1 0 8 , 2 5 1 , 01 1 1 0 d a t a 1 6 5 , 2 3 5 , 2 4 , 1 0 1 , 2 3 3 , 1 3 3 , 2 3 3 , 9 6 , 1 6 5 , 1 3 61 1 2 0 d a t a 1 6 4 , 1 3 7 , 1 3 3 , 1 3 3 , 1 3 2 , 1 3 4 , 3 2 3 8 , 1 8 6 , 2 1 1 3 0 d a t a 3 2 7 8 , 1 4 1 , 1 6 5 , 1 3 3 , 5 6 , 2 2 9 , 1 3 6 , 1 6 8 , 9 61 1 4 0 d a t a 1 7 0 , 1 7 0 , 1 7 0 , 1 7 0

T h T r a n s a c t o r J a n u a r y 1 9 8 8 ; V o l u m e 8 I s s u e O

Page 8: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 8/84

G o a i n t e r e s t i n g p r o g r a m m i n g t i p , s h o r t r o u t i n e , o a u n k n o w n b i o C o m m o d o r e t r i v i a ? S e n d i i i w u s i i t h B i t s c o l u m n , w e ' l l c r e d i t y o i

t h c o l u m n a n s e n d y o f r e e o n e - y e a r ' s s u b s c r i p t i o n t T h T r a n s a c t o r

M B r e a k A m i r M i c h a i lW i l l o w d a l e , O n t a r i o

" M B r e a k " i d e b u g g i n g t o o l t h a t l e t s y o c l e a n l y e x i t f r o mm a c h i n e l a n g u a g e p r o g r a m b h i t t i n g t h R E S T O R E k e y . W h a t ' sm o r e , t h p r o g r a m c o u n t e r ( t h e a d d r e s s o t h n e x t i n s t r u c t i o n t b e x e c u t e d ) i p r i n t e d t t h s c r e e n s o y o c a s e w h a t t h p r o g r a m w a d o i n g w h e n y o s t o p p e d i t V e r y h a n d y f o f i n d i n go u w h e r e p r o g r a m i g e t t i n g h u n g u p a n a c l e a n e ra l t e r n a t i v e t R U N S T O P / R E S T O R E .

S i n c e t h e R E S T O R E k e g e n e r a t e s a N M ( N o n - M a s k a b l eI n t e r r u p t ) , w h i c h " M b r e a k " i n t e r c e p t s , y o c a g e o u o j u s ta b o u t a n c r a s h .

J M . .N P

M M K E E E J G P L D

1 0 r e " m b r e a k " b a m i r m i c h a i l1 1 0 f o r j 7 1 0 t o j 4 1 2 r e a d a a p o k e j , a : n e x t1 3 i c < > 5 6 2 6 t h e n p r i n t ' d a t a e r r o r ! " : s t o p1 4 p o k e 7 9 2 , 1 9 8 : p o k e 7 9 3 , 21 5 p r i n t " h i t ' r e s t o r e ' t b r e a k "1 6 0 :1 7 d a t a 1 6 9 , 2 4 7 , 1 6 2 , 2 , 1 4 1 , 2 4 3 1 4 1 8 d a t a 2 5 3 3 2 , 2 2 5 , 2 5 5 , 2 0 8 , 3 7 1 9 d a t a 7 1 , 2 5 4 , 1 6 9 , 4 2 3 2 , 2 1 0 , 2 5 5 , 1 0 42 0 d a t a 1 0 4 , 1 7 0 , 1 0 4 , 3 2 2 0 5 , 1 8 9 , 1 6 9 , 1 6 42 1 d a t a 7 2 , 1 6 9 , 1 1 6 , 7 2 , 1 6 9 , 3 2 7 2 , 1 6 92 2 d a t a 1 9 8 , 1 6 2 , 2 , 1 4 1 , 2 4 3 , 1 4 2 , 2 2 3 d a t a 3 6

S o u r c e c o d e f o M B r e a kL

' I D M L K B O D H C J P F

1 0 0 n m i v e cH O b a s e n t r1 3 b r e a k I d 1 4 I d 1 5 s t 1 6 s t 1 7 j s 1 8 b n 1 9 j ' m p2 1 0 b r e a k 2 I d 2 2 j s 2 3 p l 2 4 p l 2 5 t a

7 9 $ a 4 7 4# < b a c k# > b a c kn m i v e cn m i v e c +$ f f e 1b r e a k 2$ f e 4 7# 4 $ f f d 2

; s y s t e m v e c t o r; b a s i c e n t r y p o i n t; d i s a b l e i n t e r u p t; b y p o i n t i n g v e c t o r; t " r t i "

; c h e c k s t o p k e ; c o n t i n u e i n o p r e s s e d; g t n o r m a l e n t r y

p r i n t a a s t e r i s k; i f r o n t o f p ; d i s c a r d s t a t u s r e g i s t e r v a l u e; l o w b y t e o p

N L C O G C M G V - 4 I V I

C N E M

I

2 6 2 7 2 8 2 9 3 0 3 1 3 2 Q Q f l

3 4 3 5 3 6 3 7 3 9 b a c k

V e r i f y B u

p l j s I d p h I d p h I d p h I d I d s t s t r t

; h i g h b y t e o p $ b d c d ; p r i n t p # > b a s e n t r ; p u t e n t r y p o i n t o s t a c k

# < b a s e n t r ; s o t h a t t h r t b r i n g s u t h e r e

# $ 2 0 ; c l e a r e d f l a g s f o s t a t u s r e g i s t e r# < b r e a k r e s t o r e v e c t o r# > b r e a k ; t t h i s r o u t i n en m i v e cn m i v e c +

K e v i n H i s e l a n K e v i n H o p k i n sC h a m p a i g n , I

W h a v e u n c o v e r e d b u w h a v e n e v e r s e e n m e n t i o n e db e f o r e . I i w i t h t h V E R I F Y c o m m a n d i C 6 a n C 1 2 8 B A S I C( a n d p r e s u m a b l y o t h e r v e r s i o n s a w e l l ) .

D u r i n g t h d e v e l o p m e n t o p r o g r a m t h a t c o p i e s f i l e s , l i t t l eb u c r o p p e d u t h a t c o n s i s t e n t l y t r u n c a t e d t h e l a s t b l o c k o t h f i l e . W h i l e t h i s i a l i d a y ' s w o r k f o t h p l u c k y B A S I Cp r o g r a m m e r / b u g - h u n t e r , i t c a u s e m o m e n t a r i l y e s c a p e d u s T r y i n g t f i g u r e o u w h o u 5 b l o c k p r o g r a m w a n o 5 4 w V E R I F Y e d t h 5 b l o c k v e r s i o n ( i m e m o r y ) a g a i n s t t h 5 4 b l o c k f i l e . O c o u r s e , w k n e w t h a t w w o u l d g e t h t r a d i t i o n a l" ? V E R I F Y E R R O R " b u t o u u t t e r h o r r o r a n d i s b e l i e f , o u s e e m i n g l y u n d a m a g e d m a c h i n e r e p o r t e d , " O K " .

I s e e m s t h a t V E R I F Y d o e s n o t c a r e i t h f i l e o d i s k i s h o r t e rt h a n t h p r o g r a m i m e m o r y . A l o n g a s t h e d i s k f i l e m a t c h e sm e m o r y i t h m a c h i n e u 1 t h e n o t h f i l e , V E R I F Y w i l l n o r e p o r t a e r r o r . A d m i t t e d l y , t h i s c o n d i t i o n w i l l r a r e l y o c c u r , b u h e r e i h o t d u p l i c a t e i t

1 S a v e y o u r f a v o u r i t e B A S I C p r o g r a m t s p a r e d i s k .2 U s i n g y o u r f a v o u r i t e s e c t o r e d i t o r ( l i k e D i s k D o c t o r ) , t r u n c a t e

t h f i l e b w r i t i n g z e r o b y t e i n t o t h f i r s t p o s i t i o n o s e c t o rn e a r t h m i d d l e o t h f i l e . ( T h i s w o n ' t a f f e c t t h b l o c k c o u n ti t h d i r e c t o r y u n l e s s y o c o p y t h f i l e s o m e w h e r e e l s e . )

3 L o a d t h o r i g i n a l p r o g r a m i n t o m e m o r y .4 V E R I F Y i a g a i n s t t h e t r u n c a t e d v e r s i o n .

T h T r a n s a c t o r J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 9: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 9/84

Y o u r s i l l y c o m p u t e r h a p p i l y r e p o r t s t h a t t h t w o p r o g r a m s a r i d e n t i c a l ! B u t r t L O A D a n R U t h t r u n c a t e d v e r s i o n a n y o w i l l s e t h a t t h i s i s i m p l y u n t r u e !

S n e a k y F i l e P r i n t A m i r M i c h a i l

T e a s i l y o u t p u t a S E f i l e t p r i n t e r :

l o a d B f i l e n a m e l s d , 8

( h i t R U N / S T O P R E S T O R E i s y s t e m h a n g s )

s a v e l i t l e l l c h r $ ( 1 3 ) l 4T h a t ' s i t

I n t e r r u p t R o u t i n e M a n a g e m e n t

I n s t a l l i n g a I R Q - d r i v e n r o u t i n e i n o t o d i f f i c u l t , b u i y o w i s h t b a b l e t a d n e I R r o u t i n e s w i t h o u t d i s t u r b i n gc u r r e n t o n e s , a n r e m o v e a n y i n d i v i d u a l I R r o u t i n e , t h i n g s c a g e m e s s y . T h f o l l o w i n g s h o r t r o u t i n e s m a k e u a i n t e r r u p th a n d l e r s y s t e m t h a t m a k e s a d d i n g a n r e m o v i n g I R r o u t i n e s( i n t e r r u p t s e w e r s ) s i m p l e a n e f f i c i e n t .

T h e r e a r f o u r s u b r o u t i n e s h e r e : I N S T H D L R , K I L L H D L R ,A D D S R V R , a n R E M S R V R . I N S T H D L R i c a l l e d o n c e t i n s t a l lt h I R h a n d l e r s y s t e m , a n K I L L H D L R i c a l l e d t r e m o v e i b e f o r e y o u r p r o g r a m e x i t s .

O n c e t h h a n d l e r i i n s t a l l e d , a d d i n g s e r v e r t t h i n t e r r u p tc h a i n i a c c o m p l i s h e d b s i m p l y c a l l i n g A D D S R V R w i t h t h a d d r e s s o t h s u b r o u t i n e t i n s t a l l i t h a c c u m u l a t o r ( l o w ) a n

r e g i s t e r ( h i g h ) . Y o w i l l g e b a c k t h n u m b e r f o t h a t s e r v e r i t h r e g i s t e r ; t h s e r v e r n u m b e r i u s e d t o i d e n t i f y a s e r v e r f o r e m o v a l .

T r e m o v e s e r v e r , j u s t c a l l R E M S R V R w i t h t h e s e r v e r n u m b e ri t h r e g i s t e r .

Y o w i l l a p p r e c i a t e t h e b e n e f i t s o m a n a g i n g y o u r i n t e r r u p t sw i t h t h i s s y s t e m t h f i r s t t i m e y o u s i i p r o g r a m . Y o n e v e rh a v e t t h i n k a b o u t a n y t h i n g w h e n y o w a n t e x t r a w o r k d o n ed u r i n g i n t e r r u p t s ; j u s t w r i t e t h s u b r o u t i n e , a n c a l l A D D S R V Rw h e r e y o u w a n t i a c t i v a t e d . W h e n i c o m e s t i m e t s h u t i o f f ,j u s t R E M S R V R i a t h a p p r o p r i a t e p l a c e .

I w o r k s b y s i m p l y p u t t i n g J S R s t t h s e r v e r s u b r o u t i n e s i c h a i n t h a t e n d s w i t h J M t t h o r i g i n a l I R d e s t i n a t i o n( u s u a l l y , b u t n o t n e c e s s a r i l y , t h K e r n a l I R e n t r y p o i n t a $ E A 3 1 ) . U n u s e d s e r v e r s l o t s i t h c h a i n a r f i l l e d w i t h t h r e eN O P s t t a k e t h e p l a c e o J S R . s e r v e r i a d d e d t t h c h a i n b h a v i n g J S f o l l o w e d b i t a d d r e s s p l a c e d i t h f i r s t e m p t y( N O P - f i l l e d ) s l o t i t h e s e r v e r c h a i n , a n d r e m o v e d b y h a v i n g t h J S s i m p l y N O P p e d o u t . S i m p l e , p e r h a p s , b u i w o r k s l i k ec h a r m .

T h s y s t e m a l i s t e d c a h a n d l e u t f o u r i n t e r r u p t s e r v e r s .T h i s n u m b e r c a b e c h a n g e d t a n s i z e y o u n e e d b y c h a n g i n g

t h a s s e m b l e r v a r i a b l e I H E N T R I E S . E a c h a d d i t i o n a l s e r v e ra d d e d t o t h i s m a x i m u m u s e s t h r e e m o r e b y t e s i t h e s e r v e rc h a i n , a n c a u s e s t h r e e e x t r a N O P s t b e x e c u t e d e v e r y I R Q .

I c a s e y o h a v e n ' t g u e s s e d , t h i n s p i r a t i o n f o t h e s e r o u t i n e sc o m e s f r o m t h A m i g a ' s A d d l n t S e r v e r , R e m l n t S e r v e r , a n S e t l n t H a n d l e r f u n c t i o n s . N o y o c a p r o g r a m i n t e r r u p t s o y o u r 6 j u s t l i k e t h e y d o t h A m i g a ( w e l l , a l m o s t ) .

I n t e r r u p t H a n d l e r S y s t e m

J I

P O G

A K J G

I P

M G H B K O

I O J

I A C

A I I

E P

O G K M H E C H L

H A C 0 O C M D C M H

1 0 0 0 i n t e r r u p t h a n d l e r s y s t e m1 0 1 0 ;1 0 2 0 ; i n s t h d l r . k i l l h d l r ,1 0 3 0 a d d s r v r , r e m s r v r1 0 4 0 ;1 0 5 0 t e r n p v e c =1 0 6 0 ;1 0 7 0 i h e n t r i e s =

$ f

; m a x o i n s e r v e r s1 0 8 0 ; i n c r e a s e i n e c e s s a r y1 0 9 0 ;1 1 0 0 c h a i n l e n =1 1 1 0 ;1 1 2 0 ;1 1 3 0 i h c h a i n

i h e n t r i e s

c h a i n l e n1 1 4 0 s e r v e r c h a i n g o e s h e r e1 1 5 0 r t 1 1 6 0 ;1 1 7 0 ;1 1 8 0 i n s t h d l r

.

1 1 9 0 ; i n s t a l l t h i n t e r r u p t h a n d l e r1 2 0 0 I d 1 2 1 0 I d 1 2 2 0 i h s t 1 2 3 0 d e 1 2 4 0 b p 1 2 5 0 ;1 2 6 0 p h 1 2 7 0 s e 1 2 8 0 I d 1 2 9 0 s t 1 3 0 0 s t 1 3 1 0 I d 1 3 2 0 s t 1 3 3 0 s t 1 3 4 0 ;1 3 5 0 I d 1 3 6 0 s t 1 3 7 0 I d 1 3 8 0 s t 1 3 9 0 p i 1 4 0 0 ;1 4 1 0 r t 1 4 2 0 ;1 4 3 0 ;1 4 4 0 k i l l h d l r

# c h a i n l e n - # $ e ai h c h a i n , y ; p u t n o p s i n

; h a n d l e r c h a i ni h

$ 0 3 1 4 ; s a v e i r v e c t o ri n t e x i t + 1s a v e i r q$ 0 3 1 5i n t e x i ts a v e i r q

# < h a n d l e r$ 0 3 1 4 ; p o i n t v e c t o r t h a n d l e r# > h a n d l e r$ 0 3 1 5

1 4 5 0 ; r e s t o r e i r q s a b e f o r e i n s t h d l r1 4 6 0 p h 1 4 7 0 s e

T h T r a n s a c t o r J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 10: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 10/84

A G A C E

G K

E B P E K G A M H O G J M J E B E O N

H B H O L H O J C

H P M E K O

I E N

N J M H O

I H J E N H K P A N

I d s a v e i r qs t $ 0 3 1 4 ; r e s t o r e i r v e c t o rI d a s a v e i r q + s t $ 0 3 1 5P i r t

1 4 8 01 4 9 01 5 0 01 5 1 01 5 2 01 5 3 01 5 4 0 ;1 5 5 0 ;1 5 6 0 a d d s r v r =1 5 7 0 a d d s r o u t i n e a a d d r e s s . a / . y1 5 8 0 t t h i n t e r r u p t c h a i n ;1 5 9 0 r e t u r n s t h n u m b e r o t h 1 6 0 0 ; s e r v e r i t h c h a i n i . 1 6 1 0 ;

p h s e

1 6 2 01 6 3 01 6 4 0 ;1 6 5 01 6 6 01 6 7 0 ;1 6 8 01 6 9 01 7 0 01 7 1 0 a i s 11 7 2 01 7 3 01 7 4 01 7 5 01 7 6 01 7 7 01 7 8 0

s t t e m p v e cs t t e m p v e c +

I d # $ 2 0 ; j s rI d # c h a i n l e n - 3I d # c m i h c h a i n . y ; s k i p f u l l s l o t sb n a i s 2d e d e d e d e b p a i s 1b m a i s 3

1 7 9 0 a i s 2 s t i h c h a i n . y1 8 0 0 p u t h a n d l e r c a l l i n e x t1 8 1 0 ; a v a i l a b l e s l o t

I d t e m p v e cs t i h c h a i n + , I d t e m p v e c + 1s t i h c h a i n + 2 , p i r t

1 8 2 01 8 3 01 8 4 01 8 5 01 8 6 0 a i s 31 8 7 01 8 8 0 ;1 8 9 0 ;1 9 0 0 r e m s r v r1 9 1 0 ; r e m o v e s t h i n t e r r u p t s e r v e r1 9 2 0 ; s p e c i f i e d i n . x1 9 3 0 f r o m t h i n t e r r u p t c h a i n1 9 4 0 p h 1 9 5 0 s e 1 9 6 0 ;1 9 7 0 c l 1 9 8 0 I d # 1 9 9 0 r i s 1 d e 2 0 0 0 b m r i s 22 0 1 0 a d c # 32 0 2 0 b n r i s 12 0 3 0 r i s 2 t a 2 0 4 0 I d # $ e a ; n o p o u t j s r t s e r v e r2 0 5 0 s t i h c h a i n . y2 0 6 0 s t i h c h a i n + 1 ,

I E G K E

E B M

P B A M N

2 0 7 0 s t i h c h a i n + 2 , 2 0 8 0 p i 2 0 9 0 r t 2 1 0 0 ;2 1 1 0 ;2 1 2 0 h a n d l e r2 1 3 0 j s 2 1 4 0 i n t e x i t2 1 5 0 j m p $ e a 3 12 1 6 0 ; ( $ e a 3 1 m o d i f i e d b i n s t h d l r )2 1 7 0 ;2 1 8 0 s a v e i r q2 1 9 0 ; o r i g i n a l i r v e c t o r i s a v e d h e r e

i h c h a i n ; e x e c u t e s e r v e r s

A u t o - L i n e f e e d G e n e r a t i o n J o s e p h B u c k l e yQ u i n c y , M

P a g e 3 4 o t h C o m m o d o r e 6 4 P r o g r a m m e r ' s R e f e r e n c e G u i d es t a t e s t h a t o p e n i n g a R S - 2 3 2 c h a n n e l w i t h l o g i c a l f i l en u m b e r o g r e a t e r t h a n 1 2 7 f o r c e s a a u t o m a t i c l i n e f e e d a f t e re a c h c a r r i a g e r e t u r n . W h a t m a n o b c o m m o n l y k n o w n i t h a tt h i s o n l y w o r k s w h e n s e n d i n g t t h f i l e u s i n g P R I N T f r o mB A S I C . c a m e a c r o s s t h i s w h i l e u s i n g p r i n t e r t h a t n e e d e dl i n e f e e d s .

W h a t f i n a l l y d i w a p l a c e s h o r t w e d g e i t h C H R O U Tr o u t i n e . c h a n g e d t h e v e c t o r I B A S O U T a $ 0 3 2 6 t p o i n t t t h i sc o d e .

w e d g e c m p # $ 0 db n s k i pj s $ f 1 c aI d # $ 0 a

s k i p j m $ f 1 c aT h i s w i l l a d l i n e f e e d a f t e r e v e r y c a r r i a g e r e t u r n p r i n t e d . F o m o r e g e n e r a l r o u t i n e , y o c o u l d l i m i t i t d e v i c e n u m b e r t w o .

E a s y U s e r - A l e r t T o M o r r o w , O a P a r k , I

O f t e n i p r o g r a m i b e c o m e s n e c e s s a r y t s i g n a l t t h u s e rt h a t s o m e t h i n g i m p o r t a n t i h a p p e n i n g ( l i k e t h e y a r a b o u t t f o r m a t d i s k , o e x i t t h p r o g r a m w i t h o u t s a v i n g w o r k ) . T h f o l l o w i n g s h o r t m a c h i n e l a n g u a g e r o u t i n e p e r f o r m s t h i s f u n c t i o nq u i t e e c o n o m i c a l l y . I n c l u d e t h e s e l i n e s a t h b e g i n n i n g o y o u rp r o g r a m :

1 d a t a 1 7 2 , 3 2 , 2 0 8 , 2 0 2 , 1 4 2 , 3 2 , 2 0 8 , 1 6 52 d a t a 1 9 8 , 2 4 0 , 2 4 8 , 1 4 0 , 3 2 , 2 0 8 , 9 3 f o c t = 6 7 9 t 6 9 3 : r e a d d t p o k e c t . d t : n e x t c

W h e n y o w a n t t a l e r t t h u s e r , j u s t S Y 6 7 9 . p a t t e r n w i l lf o r m i t h b o r d e r o t h s c r e e n u n t i l t h e u s e r p r e s s e s k e y .A f t e r t h e k e y p r e s s , t h e b o r d e r w i l l r e v e r t t i t o r i g i n a l c o l o u r .

u s a g e e x a m p l e :

1 p r i n t " d y o r e a l l y w a n t t o e x i t ? ( y / n ) "2 s y s 6 7 9 : g e a n

T h T r a n s a c t o r J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 11: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 11/84

C 1 2 8 B i t s1 5 7 1 S e e k - S t o p p e r

8 0 - C o l u m n T r i c k s K e v i n H i s e lC h a m p a i g n , I

s t u m b l e d a c r o s s t h e f o l l o w i n g t r i c k s w i t h t h e V D c h i p i t h C 1 2 8 . U s t h e m i 8 0 - c o l u m n m o d e w h i l e i B A S I C B A N K 1 5

1 r e w i l d s c r e e n r o u n d u p2 f o t 8 0 s y 5 2 6 8 4 , i , 1 : n e x t

1 r e c h a r a c t e r s w i p e2 f o t 8 s y s 5 2 6 8 4 , i , 2 33 0 f o r x t 1 0 0 : n e x t x ,

1 r e o p e n t h c u r t a i n2 f o t 1 0 0 : s y 5 2 6 8 4 J . 3 53 0 f o r x t o 1 0 : n e x t x . i

S i m p l e R u l e s f o t h 1 2 K e v i n H i s e lB e i n g t h l i b r a r i a n f o u s e r g r o u p , c o m e a c r o s s l o t s o 1 2 p u b l i c d o m a i n p r o g r a m s . A l m o s t a l w a y s , t h e s e p r o g r a m s n e e dt b s l i g h t l y m o d i f i e d b e c a u s e t h p r o g r a m m e r d i d n o t f o l l o wf e s i m p l e a n c o u r t e o u s r u l e s . H e r e t h e y a r e :

R u l e # 1 A l w a y s p l a c e R E i t h f i r s t f e l i n e s t h a t s t a t e sw h a t m a c h i n e t h p r o g r a m r u n s o n M a n y f r u s t r a t e d 6 o w n e r sm a g e h o l d o y o u r p r o g r a m a n d w o n d e r f o d a y s w h i w o n ' tr u n .

R u l e # 2 A l w a y s c h e c k t s e w h a t s c r e e n ( 4 0 o r 8 0 c o l u m n )t h u s e r i r u n n i n g w i t h a n i n e c e s s a r y , a d j u s t y o u r p r o g r a m o s i m p l y d i s p l a y m e s s a g e t e l l i n g t h u s e r t s w i t c h m o d e s . I i v e r y e a s y :

i r w i n d o w ( 2 ) 8 t h e n p r i n f f o r 4 0 c o l u m n m o d e o n l y " : e n

T h i s c a s a v e a l o o h e a d - s c r a t c h i n g w h e n s o m e o n e t r i e s t R U y o u r l a t e s t 4 c o l u m n h i - r e s d e m o o 8 c o l u m n s p r e a ds h e e t , e t c .

R u l e # 3 I y o u r p r o g r a m r e d e f i n e s t h f u n c t i o n k e y s , s a v e t h u s e r ' s k e y s f i r s t , a n w h e n t h p r o g r a m e n d s , p u t h e m b a c k !A g a i n t h i s i v e r y e a s y t d o

T s a v e t h k e y s :

f o 4 0 9 6 t 4 3 5 2 : p o k e 2 0 4 8 , p e e k ( i ) : n e x t

T p u t h e m b a c k w h e n y o a r d o n e :

f o 4 0 9 6 t 4 3 5 2 : p o k e i , p e e k ( i 2 0 4 8 ) : n e x t

T h e s e t w o o p e r a t i o n s t a k e a f e w s e c o n d s t e x e c u t e , b u t t h e u s e rw i l l b g r a t e f u l t h a t w h e n t h e y h i t h F k e f o d i r e c t o r y n e x tt i m e , t h e y w o n ' t f o r m a t t h e d i s k o r s o m e s u c h t h i n g .

G e r a l d B o e r s m aN e p e a n , O n t a r i o

O t h C - 1 2 8 w i t h t h 1 5 7 1 d i s k d r i v e , t h e d r i v e d o e s l o o s e e k i n g o n p o w e r - u p i t h e d i s k w i t h i n i s i n g l e s i d e d . I a e a r l i e r c o l u m n , r e a d e r m e n t i o n e d t h a t s o l u t i o n i t c o p y a l f i l e s t a n o t h e r d i s k , f o r m a t t h e d i s k a s d o u b l e s i d e d , a n c o p yt h f i l e s b a c k a g a i n . H o w e v e r , t h e r e i a e a s i e r w a y ! Y o c a j u s t f o r m a t t h s e c o n d s i d e o t h e d i s k w h i l e l e a v i n g s i d e o n a l o n e .

T y p e : o p e n 1 5 , 8 , 1 5 , B u 0 > m 0 "p r i n t # 1 5 , p u 0 > h 1 "

T h i s p u t s t h e 1 5 7 1 d r i v e i 1 5 4 1 m o d e , t h e n s e l e c t s t h s e c o n dr e a d / w r i t e h e a d . A t h i s p o i n t t h d r i v e e r r o r l i g h t m a f l a s h ,s i n c e t h s e c o n d s i d e o t h e d i s k i n o f o r m a t t e d . D o n ' t w o r r ya b o u t i t y o a r a b o u t t f o r m a t t h i s s i d e :

p r i n t # 1 5 / n O : a n t i - k n o c k , a k "

A f t e r t h e f o r m a t t a k e s p l a c e , t h e d i s k i p r e p a r e d f o f u t u r e u s e .N o w , w h e n y o b o o t u w i t h t h a t d i s k i t h d r i v e , t h 1 5 7 1 w i l li m m e d i a t e l y f i n d b o t h s i d e s a n w o n ' t c h a t t e r a y o w h i l e i t r i e s t m a k e s e n s e o t h s e c o n d s i d e .

C A U T I O N : D o n ' t u s e t h i s o " f l i p p i e s " , d i s k s t h a t h a v e d a t a i o nb o t h s i d e s , s i n c e y o w i l l w i p e o u t t h e s e c o n d s i d e . ; ? " £ ■ ,

C 1 2 8 I / I n c o m p a t i b i l i t y R i c h a r d T h o r n t o nR i c h m o n d , V i r g i n i a

R e c e n t l y s p e n t c o n s i d e r a b l e t i m e t r y i n g t c o n v e r t C 6 m a c h i n e l a n g u a g e p r o g r a m t t h C 1 2 8 . O t h 1 2 v e r s i o n , t h d i s k f i l e i p r o d u c e d w a i n c o r r e c t , a n s o m e d a t a w a e r r a t i c a l l yw r i t t e n t t h s c r e e n r a t h e r t h a n t h f i l e . T h p r o b l e m t u r n e do u t b c o n s e c u t i v e c a l l s t t h C H K O U T r o u t i n e w i t h n p r i o rc a l l t C L R C H N . A p p a r e n t l y , t h e C 6 4 / 1 5 4 1 h a n p r o b l e m w i t ht h i s , b u t t h e C 1 2 8 / 1 5 7 1 c a n ' t h a n d l e i p r o p e r l y . P r e c e d i n g e a c hC H K I N a n C H K O U T w i t h c a l l t C L R C H N s o l v e d t h p r o bl e m .

F u n c t i o n K e F i n a g l e r E S c h m a h lB o w i e M

H e r e i w a t m a k e y o u r C - l 2 8 f u n c t i o n k e y s s e l f - m o d i f y i n g ,s t h a t e v e r y t i m e y o h i f u n c t i o n k e y , n u m b e r s w i t h i n t h ek e d e f i n i t i o n w i l l i n c r e a s e o d e c r e a s e b s e v a l u e . T h i s i u s e f u l , f o e x a m p l e , w h e n y o a r d e v e l o p i n g a p r o g r a m a n dw i s h t s a v e i w i t h n e v e r s i o n n u m b e r e a c h t i m e . W i t h' • f u n c t i o n k e f i n a g l e r " , y o c o u l d s e u f u n c t i o n k e l i k e t h i s :

k e y 5 , a d s a v e ' c h r $ ( 3 4 ) " f i l e . O O l "c h r $ ( 3 4 ) B : s y s 4 8 6 4 , 5 , 1 , 2 °

T h f i r s t t i m e y o p r e s s F 5 t h f i l e " f i l e . O O l n w i l l b s a v e d ; t h eq e x t t i m e , t h n a m e w i l l b " f i l e . 0 0 2 " , e t c .

T h T r a n s a c t o r J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 12: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 12/84

T h " s y s 4 8 6 4 " i t h a b o v e e x a m p l e i w h a t i n c r e m e n t s t h v a l u e i t h e f u n c t i o n k e y . Y o c a p u t h r o u t i n e a n y w h e r e i m e m o r y ; i t ' s f u l l y r e l o c a t a b l e . T h s y n t a x f o u s i n g i i s

S Y a d , a , x , y

a i t h s t a r t a d d r e s s o t h r o u t i n e ( 4 8 6 4 i t h a b o v ee x a m p l e ) ; a i t h f u n c t i o n k e n u m b e r ( t 1 0 ) ; i t h a m o u n to t h i n c r e m e n t ( w h i c h c a n b e n e g a t i v e u s i n g 2 5 f o - 1 , 2 5 4 f o - 2 e t c . ) ; a n d y i t h p o s i t i o n w i t h i n t h e f u n c t i o n k e d e f i n i t i o n ,w i t h z e r o b e i n g t h p o s i t i o n o t h f i r s t o c c u r e n c e o d i g i t .

H e r e a r f e o t h e r s e l f - m o d i f y i n g f u n c t i o n k e y s t h a t y o m i g h t f i n d i n t e r e s t i n g :

k e y 1 , B g r a p h i c ( 0 a n d 1 ) : s y s 4 8 6 4 , 1 , 1 , 0 " c h r $ ( 1 3 )( t o g g l e s g r a p h i c s m o d e s )

C u r s o r S a v e a n R e s t o r e P a u l B l a i rC a n b e r r a , A u s t r a l i a

T h i s r o u t i n e i o n I ' v e a l w a y s w a n t e d , a n t h C 1 2 8 m a k e s i e a s y . T h e r e a m w a n t i n g t p r i n t s o m e t h i n g o t h e s c r e e n ,j u m p o f t a n o t h e r s p o t t o p r i n t s o m e t h i n g e l s e , t h e n r e t u r n t w h e r e l e f t o f f , t p r i n t m o r e .

B a s i c 7 h a t w r o u t i n e s t h e l p m d t h i s , S A V E P O S a n R S T R P O S a $ C C 1 E a n $ C 9 3 2 r e s p e c t i v e l y . S A V E P O S s a v e st h e c u r r e n t c u r s o r l o c a t i o n ( c o l u m n a n r o w ) a $ D E / $ D F .R S T R P O S r e c o v e r s t h e m a n p u t s y o u b a c k w h e n c e y o c a m e .T r t h i s ( f r o m b a n k 1 5 ) :

s c n c l r : c h a r 0 , 4 , 7 , " t h i s i u h e r e "s y 5 2 2 5 4 : s l e e p 2 c h a r 0 , 1 1 , 2 0 , " l o o k ! "s y 5 1 5 0 6 : s l e e p 2 p r i n t ' a g a i n "

k e y 2 , V o l 5 : s o u n d 2 , 4 0 0 0 , 6 : s y s 4 8 6 4 , 2 , 3 , 1 1 " + c h r $ ( 1 3 )( b e e p w i t h v a r y i n g p i t c h )

k e y 3 , " a ( 0 0 a n d 1 5 ) + : c o l o r 4 , a : s y s 4 8 6 4 , 3 , 1 , 1 c h r $ ( 1 3 )( c h a n g e b o r d e r c o l o u r )

k e y 7 , 1 i s t 0 0 0 0 0 - 0 0 T 0 0 : s y s 4 8 6 4 , 7 , 1 , 2: s y s 4 8 6 4 , 7 , 1 , 8 ' c h r $ ( 1 3 )

( l i s t f o r w a r d o n b l o c k a t i m e )

k e y 8 , " l i s t 0 0 8 0 0 - 0 0 9 0 0 : s y s 4 8 6 4 , 8 , 2 5 5 , 2: s y s 4 8 6 4 , 8 , 2 5 5 , 8 " c h r $ ( 1 3 )

( l i s t o n b l o c k a a t i m e b a c k w a r d s )

C h a n g e t h e s e k e c o m m a n d s t s u i t y o u r t a s t e , o i n v e n t o t h e ro n e s a y o l i k e . R e m e m b e r t o i n s e r t e n o u g h l e a d i n g d i g i t s t op r e v e n t w r a p - a r o u n d s i t h n u m b e r s . T h M p r o g r a m i o n l y8 b y t e s , s y o c a s t u f f i a l m o s t a n y w h e r e e v e n i t h u p p e r p a r t o k e m e m o r y ( $ 1 0 0 0 - $ 1 0 f f ) , i y o u r k e y m e s s a g e sa r s h o r t .

C 1 2 8 F u n c t i o n K e F i n a g l e r

A m i g a B i t s

N E A B C K B J G C F

N P F O C

1 0 r e f u n c t i o n k e f i n a g l e r1 1 a 4 8 6 4 : r e r e l o c a t a b l e1 2 f o t o 7 9 : r e a d1 3 p o k e a d + i , n : c c n n e x t1 4 i c k < > 1 1 2 2 7 t h e n p r i n f d a t a e r r o r "1 5 0 :1 6 d a t a 1 3 2 , 2 5 0 , 1 6 8 , 1 6 9 , 1 6 , 1 3 3 , 2 5 2 , 1 6 91 7 0 d a t a 0 , 1 3 3 , 2 5 1 , 1 3 6 , 2 4 , 1 3 6 , 4 8 1 8 d a t a 1 1 3 , 2 5 1 , 2 0 8 , 2 4 9 , 1 0 5 , 9 , 1 3 3 , 2 5 11 9 d a t a 2 0 0 , 5 6 , 1 7 7 , 2 5 1 , 2 3 3 , 4 8 , 2 0 1 , 1 02 0 d a t a 1 4 4 , 6 2 3 0 , 2 5 1 , 2 0 8 , 2 4 4 , 2 4 0 , 3 2 1 d a t a 1 6 4 , 2 5 0 , 1 3 8 , 1 1 3 , 2 5 1 , 1 7 6 , 1 5 , 2 0 12 2 0 d a t a 5 8 , 1 4 4 , 2 6 , 2 3 3 , 1 0 , 1 4 5 , 2 5 1 , 1 3 62 3 d a t a 4 8 2 1 , 1 6 9 , 0 2 4 0 , 2 3 7 , 2 0 4 2 4 0 d a t a 1 7 6 , 1 1 , 1 0 5 , 1 0 , 1 4 5 , 2 5 1 , 1 3 6 , 4 2 5 d a t a 6 , 1 6 9 , 2 5 5 , 4 8 , 2 2 2 , 1 4 5 , 2 5 1 , 9 6

C L I H i n t S t e v e T i b b e t tG l o u c e s t e r , O n t a r i o

H e r e ' s a t i f i n d u s e f u l a t i m e s f o s t a r t i n g b u n c h o t a s k sw i t h o u t s t u f f g o i n g o w h i l e I ' t y p i n g : I y o h o l d d o w n t h C T R L k e w h e n y o h i R E T U R N a f t e r t y p i n g a C L I c o m m a n d ,t h C L w i l l n o s t a r t p r o c e s s i n g t h a t l i n e u n t i l y o h i t h R E T U R N k e a l o n e . S o i y o t y p e L I S T < C T R L - R E T U R N >D I < R E T U R N > , L I S T w i l l o n l y b e e x e c u t e d a f t e r t h f i n a lR E T U R N , f o l l o w e d b D I R .

T h i s c a c o m e i h a n d y w h e n y o w a n t e x e c u t e f e c o m a n d s , b u w i s h t w a i t u n t i l l a r g e p r o g r a m h a l o a d e d t a v o i d m a k i n g t h e d i s k h e a d s e e k b a c k a n f o r t h b e t w e e n f i l e s ;w h i l e t h p r o g r a m i l o a d i n g , y o c a n t y p e a l y o u r c o m m a n d su s i n g C T R L - R E T U R N b e t w e e n t h e m , t h e n j u s t p r e s s t h e f i n a lR E T U R N w h e n d i s k a c t i v i t y s t o p s .

A m i g a D O S R o l l o d e x T o o l B e n j a m i n D o b k i nR e g o P a r k , N Y

T h i s s h o r t E x e c u t e f i l e w i l l r e t r i e v e a l t h " r o l l o d e x c a r d s " , f r o mp r o p e r l y f o r m a t t e d f i l e , w h o s e f i r s t l i n e m a t c h e s s u p p l i e d

a r g u m e n t .

F o e x a m p l e , t o f i n d " J o n e s " i y o u r d a t a b a s e f i l e c a l l e d " a d r e s s e s " , y o u w o u l d t y p e f r o m t h C L I :

e x e c u t e r o l l o d e x j o n e s a d d r e s s e s

A l l e n t r i e s w h o s e f i r s t l i n e s t a r t e d w i t h " J o n e s " w o u l d b c o m p l e t e l y p r i n t e d o u t .

T h " r o l l o d e x " e x e c u t e f i l e i s i m p l y t h i s :

T h T r a n s a c t o r 1 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 13: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 13/84

. K E Y s t r i n g , d a t a b a s ee c h o > r a m : t e m p ° 0 ( F B U / < s t r i n g > / ; P ; T N ) ; S T O P Be d i t f r o m < d a t a b a s e > t o n i l : w i t h r a m : t e m p O P P 6 W 6 0d e l e t e > n i l : r a m : t e m p

I u s e s t h l i n e e d i t o r E d i t ( i n c l u d e d o t h s t a n d a r d W o r kb e n c h d i s k ) , s t h a t p r o g r a m m u s t b e i y o u r d i r e c t o r y o rs o m e w h e r e e l s e i t h s e a r c h p a t h f o R o l l o d e x t w o r k .Y o u r " d a t a b a s e " i j u s t s t a n d a r d A S C I I f i l e t h a t y o u c a nm a k e w i t h t e x t e d i t o r ( E d , E m a c s , e t c . ) , w i t h e a c h e n t r yt a k i n g f i x e d n u m b e r o l i n e s , f o e x a m p l e :

A m i g a B a s i c F a d e - i n G r a h a m R e e dT o r o n t o , O n t a r i o

J o n e s , F r e d1 B e a z l y S t r e e tL o n d o n , E n g l a n dp h o n e 2 1 2 - 3 0 4 - 3 1 2 3

J a n e , M a r y1 4 1 s t S t N e Y o r k , N p h o n e 5 0 1 - 1 2 3 - 4 3 5 1

I f i l e l i k e t h i s , e a c h r e c o r d i s i x l i n e s l o n g . T h i s c o r r e s p o n d st t h f i r s t i t h " O P T P 6 W 6 0 " o p t i o n g i v e n t E d i t i t h e x e c u t e f i l e . Y o c a c h a n g e t h i s t o s u i t y o u r n e e d s .

R o l l o d e x w o r k s b y g i v i n g c o m m a n d s t E d i t . I c r e a t e s t e m p or a r y c o m m a n d f i l e f o E d i t i R A M : t h a t l o o k s l i k e t h i s , w i t h t h a r g u m e n t < s t r i n g > s u b s t i t u t e d f o y o u r s e a r c h s t r i n g :

" 0 ( F B U / < s t r i n g > / ; P ; T N ) ; S T O P "

T h i s m e a n s g f o r w a r d , l o o k a t h b e g i n n i n g o e a c h l i n e f o r t h u p p e r c a s e s t r i n g , w h e n i t ' s f o u n d , b a c k u p t t h e p r e v i o u s l i n e ,t h e n t y p e t t h e n o t h b u f f e r . T h b r a c k e t s g r o u p t h e s ei n s t r u c t i o n s t o g e t h e r , a n t h i n f r o n t m e a n s r e p e a t t h e mi n d e f i n i t e l y , u n t i l e n o f i l e . T h S T O P e x i t s E d i t a n r e t u r n s t t h e C L I .

E d i t i t h e n c a l l e d , u s i n g t h c o m m a n d f i l e j u s t c r e a t e d a n t h o p t i o n s P 6 W 6 0 , g i v i n g t h e b u f f e r s i z e ( s i x l i n e s o u t o s i x t yc h a r a c t e r s e a c h ) . A e x p l a i n e d a b o v e , y o c a c h a n g e t h b u f f e rl e n g t h t s u i t y o u r d a t a b a s e f i l e f o r m a t .

N o t e t h a t i t h d a t a b a s e f i l e , t h e s e a r c h s t r i n g m u s t s t a r t w i t ha u p p e r c a s e c h a r a c t e r a n m u s t b e g i n i t h f i r s t c o l u m n .A l s o , t h m a t c h i m a d e b t h f i r s t c h a r a c t e r s o t h l i n e , s s e a r c h i n g f o " S M " w i l l m a t c h " S m i t h " , " S m u r f " S m e d l e y " ,e t c . T h " u s e d a b o v e i n o n e c e s s a r y , b u s o m e f o r m o d e l i m i t e r b e t w e e n e n t r i e s i g o o d i d e a f o c l a r i t y .

N o y o h a v e s i m p l e d a t a b a s e , w i t h o u t s p e n d i n g m o n e y o t y p i n g i a l o n g p r o g r a m !

T h i s s i m p l e A m i g a B A S I C p r o g r a m w i l l c r e a t e a " f a d e - i n " o r" f a d e - o u t " e f f e c t b v a r y i n g t h i n t e n s i t i e s o f a l f o u r c o l o u rr e g i s t e r s f r o m t h g i v e n c o l o u r s t b l a c k , o f r o m b l a c k t t h g i v e n c o l o u r s . I c u r r e n t l y d o e s t h f i r s t f o u r c o l o u r r e g i s t e r so n l y , b u i c o u l d b e a s i l y m o d i f i e d t w o r k w i t h 8 1 6 o 3 2 c o l o u r s c r e e n s a s w e l l , a l t h o u g h a v i s i b l e " w a s h " w o u l d o c c u rd u t t h s p e e d o B a s i c .

T h f a d e i a c c o m p l i s h e d b t h s u b p r o g r a m f a d e i n , w h i c h i p a s s e d a r r a y s c o n t a i n i n g t h e t h e r e d , g r e e n , a n b l u e c o l o u ri n t e n s i t i e s ( f r o m t 1 f o e a c h o t h f o u r c o l o u r s i t h W o r k b e n c h s c r e e n , a n f a d e d i r e c t i o n . I t h d i r e c t i o n i n o n z e r o , t h r o u t i n e f a d e s t h s c r e e n i f r o m b l a c k t t h s p e c i f i e d c o l o u r s ; i z e r o , i f a d e s o u f r o m t h e g i v e n c o l o u r s t b l a c k .

T h m a i n l i n e p a r t o t h p r o g r a m s h o w s h o t u s f a d e i n : i l o a d s c o l o u r v a l u e s ( s p e c i f i e d h e r e i t h e i r " r e a l " f o r m f r o m t 1 a n c o n v e r t e d t B a s i c ' s t r e p r e s e n t a t i o n ) i n t o a r r a y s ,a n p a s s e s t h o s e a r r a y s t f a d e i n a l o n g w i t h a d i r e c t i o n . T s h o wo f f , i k e e p s f a d i n g i a n o u u n t i l y o c l i c k t h l e f t m o u s eb u t t o n .

f a d e i n / o u tm a i n :

D I r ( 3 ) , g ( 3 ) , b ( 3 ) \ ^ f -F O T ' r e a d r g b v a l u e s f o e a c h c o l o u r r e g i s f i i r

R E A D r g r ( i ) r / 1 5 : g ( i ) g / 1 5 : b ( i ) b / 1 5

N E X T iP R I N T " C l i c k l e f t m o u s e b u t t o n t e n d "W H I L E M O U S E ( 0 ) =

C A L L f a d e i n ( r O , g O , b ( ) , 0 )C A L L f a d e i n ( r ( ) , g ( ) > b ( ) , 1 )

W E N DE N

r g v a l u e s f o e a c h c o l o u r r e g i s t e rD A T A 0 5 , 1 0D A T A 1 5 , 1 5 , 1 5D A T A 0 0 D A T A 1 5 8

S U f a d e i n ( r e d ( 1 ) , g r e e n ( 1 ) , b l u e ( 1 ) , d i r % ) S T A T I CI F d i r o / o T H E N

d i r % 1 s 0 e ' f a d e i E L S E

d i r ° / o = - 1 : s 1 e 0 ' f a d e o u E N I F O s T e S T E P d i r ° / o . 0 6 2 5

F O R j % 0 T O 3P A L E T T E j ° / o , i * r e d ( j ° / o ) , i * g r e e n ( j % ) , i * b l u e ( j % )

N E X T j o / oN E X T i

E N S U

T h T r a n s a c t o r 1 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 14: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 14/84

" A d v e r t i s i n g I T h T r a n s a c t o r W O R K S ! " : I y o u r J u l y ' 8 i s s u e o t h T r a n s a c t o r y o p u b l i s h e d m p r e s s r e l e a s e i y o u rN E W S B R s e c t i o n . I m m e d i a t e l y f o l l o w i n g p u b l i c a t i o n w e x p e r ie n c e d d r a m a t i c i n c r e a s e i B B s a l e s f r o m c u s t o m e r s b o t h i C a n a d a a n t h p r e v i o u s l y u n t a p p e d U . S . m a r k e t .

w o u l d l i k e t t h a n k y o f o p r o v i d i n g t h i s w o n d e r f u l s e r v i c e .W i t h o u t h e l p o t h i s k i n d , s m a l l m a i l - o r d e r o p e r a t i o n s , l i k e m y s e l f ,w o u l d n o s u r v i v e . P a s s t h m e s s a g e t y o u r p r o s p e c t i v e a d v e rt i s e r s : a d v e r t i s i n g i t h e T r a n s a c t o r W O R K S !

J a m e s M a c F a r l a n e , C o - A u t h o r , S p e n c e X B B I s l i n g t o n , O n t a r i o , C a n a d a

C P / M I T h T T h a n k g o o d n e s s , s o m e b o d y r e a l i s e s t h a t C P / Ma r t i c l e s a r N E E D E D . h a v e t h C 1 2 8 , c a n ' t a f f o r d t b u a A m i g a- a n d i c o u l d m w i f e w o u l d n ' t s t a n d f o s p e n d i n g t h a t m u c hm o n e y o m h o b b y s h a v e t e x p l o r e a l f a c e t s o f t h c o m p u t e r

h a v e ! h a v e d r o p p e d m s u b s c r i p t i o n s t C o m p u t e G a z e t t e a n R U b e c a u s e t h e y n e v e r p u b l i s h a r t i c l e s o t h C P / M m o d e .

P l e a s e e n c o u r a g e A d a m H e a r s t a n C l i f t o n K a r n e s t k e e p w r i t i n g .. f o y o u r C P / M a u d i e n c e .

J N e l s o n W i l l i a m , S a D i e g o , C a l i f o r n i a

A f i r s t w s t a y e d a w a y f r o m C P / M b e c a u s e o i t a g e ; t h e d u r a t i o no i t e x i s t e n c e l e d u t b e l i e v e t h a t t h e r e w a a l r e a d y p l e n t y o i n f o r m a t i o n a v a i l a b l e i o t h e r m a g a z i n e s a n b o o k s . T u r n e d o u w w e r e w r o n g C P / M i n f o h a s g o n e d r y , a n h e l p c a n b e h a r d t f i n d . S w b e g a n a c t i v e l y l o o k f o l i t t l e C P / M m a t e r i a l e a c h i s s u e .T h a n k s t A d a m H e r s t , C l i f t o n K a r n e s , A u b r e y S t a n l e y , M i k eG a r a m s z e g h y a n o t h e r s , C P / M i s h e d d i n g i t y e a r s a n l o o k i n gg o o d . T h a n k s f o t h e s u p p o r t .

" . . i f I o w n e d o n w o u l d g e a A m i g a m a g a z i n e ! 9 9 : M r B e r n a r d H W e i s s ( L e t t e r s , V o l u m e 8 I s s u e 2 h a s e x p r e s s e d w h a th a b e e n o n m m i n d f o s o m e t i m e i r e g a r d s t y o u r A m i g ac o v e r a g e . T h e r e ' s t o m u c h o i t

M 6 4 h a s d o n e t h j o f o m f o 4 y e a r s a n s h a t h 1 5 4 1( w i t h o u t t r o u b l e ! ) . T h e A m i g a i g r e a t c o m p u t e r b u i o w n e d o n

w o u l d g e a A m i g a m a g a z i n e . C o m p u t i n g i h o b b y w i t h m e b u i w e r e t g e o t h t r e a d m i l l o b u y i n g n e m a c h i n e s e v e r yy e a r o s c o u l d n o a f f o r d t h T r a n s a c t o r !

P . S . d n o l i k e y o u r V o l u m e 8 I s s u e c o v e r ! T h o l a r t w o r k w a w o r t h t h p r i c e o t h " T b i t s e l f . A l s o , t h p a p e r i t o s h i n yh a r d o t h e y e s ! ! !

H a n s U e c h e r t , W y m a r k , S a s k a t c h e w a n

C o m m o d o r e h a s p r o d u c e d s o m e p r e t t y g o o d c o m p u t e r s o v e r t h y e a r s . A n s i n c e 1 9 7 8 , w h a v e c o v e r e d t h e m a l l , i o n w a o a n o t h e r . T h A m i g a i y e a n o t h e r C o m m o d o r e c o m p u t e r , s o w e ' v ec o v e r e d i t o o . I t ' s n i c e t w o r k w i t h , p o w e r f u l a n f u l l o p o s s i b i l it i e s . B u y o u ' r e r i g h t A m i g a u s e r s s h o u l d b u a A m i g a - s p e c i f i cm a g a z i n e . T h a t ' s w h y , c o m e e a r l y J a n u a r y , T r a n s a c t o r w i l l u d e r g o m i t o s i s . Y o u ' l l g e y o u r e i g h t - b i t j o u r n a l o n c e a g a i n . N m o r eA m i g a c o v e r a g e ! T h i s c e l l - d i v i s i o n , t h o u g h , w i l l s p a w n s e c o n dT r a n s a c t o r f o A m i g a u s e r s o n l y " T r a n s a c t o r f o t h A m i g a " .( N o t e t A m i g a u s e r s l o o k i n g f o m o r e d e t a i l s : s e t h e d i t o r i a l i t h i s i s s u e . )

Y o d o n ' t l i k e o u C T o w e r p h o t o g r a p h ! J o h n M o s t a c c i w o u l d b g l a d t h e a r t h a t y o m i s s h i m . B u t h n e c o v e r d e s i g n i h e r e t s t a y a l e a s t t i l l t h n e x t t i m e w c h a n g e i t A f t e r p a i n s t a k i n gm a r k e t r e s e a r c h , w h a v e d e t e r m i n e d t h a t w h i t e m a g a z i n e c o v e r ss h o w u b e t t e r o n e w s s t a n d s h e l f t h a t c o l o u r e d o n e s d ( a c t u a l l y ,w j u s t w e n t t m a g a z i n e s t o r e a n d h a d a g o o d l o o k a r o u n d , b u i a m o u n t s t t h s a m e t h i n g ) . L u c k i l y f o u s l o o f r e a d e r s s e e m t a p p r o v e , o t h n e c o v e r s , t h o u g h w h a v e t a d m i t t h e r e ' s q u i t ef e d i s g r u n t l e d D u k e f a n s o u t h e r e . B u w h a t c o u l d w d o D u k eg o t h i m s e l f a A c l o n e , a n h e ' l l p r o b a b l y s h o w u i o n o t h M S - D O S m a g a z i n e s a n m o n t h n o w , r e v i e w i n g p r o d u c t i v i t y s o f tw a r e .

P r o g r a m L i s t i n g s F o A l M a c h i n e s : Y o u r l a s t n e w s s t a n d i s s u ew a t h f i r s t i s s u e e v e r s a o t h T r a n s a c t o r . r e g r e t t h p a s tT h T r a n s a c t o r 1 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 15: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 15/84

i s s u e s m i s s e d , b u w i l l b p a r t o t h f u t u r e . S i n c e m g r e a t e s tp l e a s u r e i w r i t i n g m o w p r o g r a m s , y o u r i n s t r u c t i o n a l l i s t i n g s i h e o B a s i c i w h a t a l o o k i n g f o r .

d h a v e r e q u e s t ( t h a t y o u m u s t g e a l t h t i m e f r o m o w n e r s o t h C 1 2 8 ) . W h e n m c u r r e n t p r o g r a m r a o u o f s t r i n g s p a c e ( e s p e c i a l l yv a r i a b l e s p a c e ) , u p g r a d e d f r o m t h C 6 t t h C 1 2 8 . 1 n o t i c e d m o s to y o u r a r t i c l e s d e a l w i t h t h C 6 4 . s u p p o s e t h p h i l o s o p h y i c o m p u t e r l a n d i t h a t s i n c e w h a v e C 6 i o u C 1 2 8 w a r c o v e r e d . H o w e v e r , b e t h a t m o s t o y o u r r e a d e r s a r e a l s o h a c k e r sl i k e m y s e l f a n o n c e w h a v e p u o u p r o g r a m s i n t o C 1 2 8 f o r m a t ,w c a n ' t g o b a c k t t h C 6 4 . F o i n s t a n c e , " X R E F f o t h 6 4 b D a v i d A r c h i b a l d m a k e s m m o u t h w a t e r . c o u l d r e a l l y u s t h a t h e l pw i t h m p r o g r a m . S i n c e i i w r i t t e n w i t h d a t a s t a t e m e n t s c a n ' tc h a n g e i f o m C 1 2 8 . M r e q u e s t i t h a t y o m i g h t m a k e i p o l i c yt h a t a n C 6 a r t i c l e y o p r i n t w o u l d b e p u r c h a s e d ( o c o u r s e a l o w e r f e e ) i n r e v i s e d C 1 2 8 f o r m a t i a n y o n e i y o u r r e a d i n ga u d i e n c e h a s t h a b i l i t y o p a t i e n c e t d s o n o t i c e d t h a t C o m p u t e !M a g a z i n e o f t e n l i s t s t h s a m e p r o g r a m f o s e v e r a l d i f f e r e n t c o p u t e r s . M a y b e t h i s m e a n s f e w e r p r o g r a m s p e i s s u e , b u n o b o d y i l e f t b i t i n g t h e i r f i n g e r n a i l s ( e x c e p t C 1 2 8 o w n e r s i C o m p u t e !m a g a z i n e ) .

P . S . I w o u l d a l s o m a k e p u r c h a s i n g y o u r d i s k s m o r e r e a s o n a b l e . A t h i s p o i n t i w o u l d b e j u s t a n o t h e r f r u s t r a t i o n .

C y n t h i a D a r r o w , W a t e r t o w n , N

T h a t ' s a i n t e r e s t i n g i d e a , . C y n t h i a . I n f a c t , w h e n e v e r p o s s i b l e , w d l i k e t o r u m u l t i p l e v e r s i o n s o o u p u b l i s h e d p r o g r a m s . A l s o , w u s u a l l y a r a b l e t p u b l i s h t h s o u r c e f o m a c h i n e l a n g u a g e p r og r a m s ( t h o u g h n o i t h c a s e o X R E F , u n f o r t u n a t e l y ! ) ; w d t h i sf o t h v e r y r e a s o n t h a t i e n a b l e s r e a d e r s t m o d i f y t h c o d e t o s u i tt h e i r o w n e e d s o t h e i r o w m a c h i n e s . I r e a d e r s w i s h t s e n d u p o r t e d v e r s i o n s o p r o g r a m s f r o m t h m a g a z i n e , w w i l l c e r t a i n l yc o n s i d e r t h e m f o p u b l i c a t i o n ( o p e r h a p s f o t h d i s k , d e p e n d i n g o t h s i z e o t h p r o g r a m , a n s o n ) . I a n c a s e , g o o d i d e a s d o n ' t

j u s t m a t e r i a l i z e o n c e t h e n v a n i s h , s y o u ' l l m o r e t h a n l i k e l y s e a o r i g i n a l C 1 2 8 c r o s s - r e f e r e n c e p r o g r a m i T r a n s a c t o r s o m e t i m e i t h n e a r f u t u r e .

T r a n s a c t o r C o n t i n u i n g E d u c a t i o n C o u r s e : I t h c o u r s e o l o n g a n v a r i e d a c a d e m i c c a r e e r , n o d e f u n c t b g o o d t e y e a r s ,i h a b e e n m l o t d e a l w i t h C o n t i n u i n g E d u c a t i o n c o u r s e s o f f e r e db o u U n i v e r s i t y i f a c t , s t i l l o p e r a t e s e v e r a l o t h e m i t h f i e l do M i c r o b i o l o g y a n P u b l i c H e a l t h .

A r e s u l t o f t h i s e x p e r i e n c e a n t h f a c t t h a t i s e e m s u n d u l yt o r t u r o u s t l e a r n 6 5 0 2 a s s e m b l y l a n g u a g e i a n s h o r t t i m e , s o l o , i o c c u r s t m t h a t , g i v e n a s u f f i c i e n t l y l a r g e , i n t e r e s t e d b o d y o e a g e rn e o p h y t e s , y o u a n d y o u r c o n s i d e r a b l e b e v y o t o p - n o t c h e x p e r t sc o u l d e i t h e r o f f e r s u c h a c o u r s e b m a i l f o a a p p r o p r i a t e f e e , o i c o u l d b a c t i v a t e d a a c o n t i n u i n g s e r i e s i T r a n s a c t o r , m a l t i m ef a v o u r i t e m a g .

O n m i g h t s u p p o s e t h a t y o h a v e t h o u g h t t h r o u g h s u c h p l a nm a n y t i m e s a n d i s c a r d e d i f o a n n u m b e r o a r c a n e r e a s o n s .E v e n i s o p e r h a p s a n o t h e r l o o k m i g h t p r o d u c e d i f f e r e n t r e s u l t s .

B o T i s c h e r , S t a r k v i l l e , M

B o b , w h a v e n e v e r c o n s i d e r e d p r o v i d i n g c o u r s e t h r o u g h t h m a i lb e f o r e . W i t h o u s m a l l s t a f f , i t ' s d i f f i c u l t e n o u g h t o j u s t k e e p

p r o d u c i n g t h m a g a z i n e . Y o c o u l d b r i g h t , t h o u g h . I f s u f f i c i e n ti n t e r e s t d i m a t e r i a l i z e , I a s u r e w c o u l d r o u n d u h o s t o f t o p -n a m e a u t h o r s t g i v e u h a n d w i t h t h s e r i e s . F o o d f o r t h o u g h t .M a y b e y o u r l e t t e r w i l l g e n e r a t e s o m e m a i l f o u s H o a b o u t i f o l k s

C o n t i n u i n g E d u c a t i o n , b m a i l , i i n t e r m e d i a t e t a d v a n c e dp r o g r a m m i n g s k i l l s ? C o m m e n t s , a n y o n e ?

" G E O S m i c e - a n d - l i t t l e - p i c t u r e s e n v i r o n m e n t " : G E O Sd o e s n ' t s e e m t g e m u c h r e s p e c t a m o n g " t e c h i e " u s e r s . W h i l e c a u n d e r s t a n d t h a t , h a v e n o t i c e d t h a t i t ' s o f t e n t h p e o p l e w h a r m o s t e n a m o r e d o t h A m i g a m i c e - a n d - l i t t l e - p i c t u r e s e n v i r o n m e n tw h s n e e r t h m o s t a t h G E O S m i c e - a n d - l i t t l e - p i c t u r e s e n v i r o nm e n t . S i n c e t h i t h f o r e m o s t i C o m m o d o r e t e c h i e m a g a z i n e s ,I ' b e m o s t i n t e r e s t e d i s e e i n g f e a r t i c l e s a b o u t G E O S , p r o c o ( a n d I ' a w a r e t h a t t h " p r o " o n e s w i l l b h a r d t c o m e b y ! )A n p o s s i b i l i t y o f t h a t ?

M a r t e B r e n g l e , B u r b a n k , C a l i f o r n i a

G E O S . I t ' s b e e n t o u g h d e c i s i o n t m a k e s i n c e d a o n e . G E O S i g r e a t f o t h o s e u s e r s w h f i n d i s u i t s t h e i r s t y l e , b u s f a i d o e s n ' s e e m t h a v e b e e n i n s p i r i n g f o m a n y p r o g r a m m e r s . I w e ' r e g o i n gt c o v e r G E O S , i w i l l b e f r o m t h p r o g r a m m e r ' s p o i n t o v i e w o u n o r m a l s l a n t , i o t h e r w o r d s . S f a r , w h a v e n ' t b e e n g e t t i n g t h o s ea r t i c l e s a n d , f r a n k l y , w w o u l d n ' t k n o w w h e r e t l o o k f o t h e mo u t s i d e t h e w a l l s o f B e r k e l e y S o f t w o r k s . A n s o w e ' r e s i l e n t o G E O S . . . n o f r o m p r i n c i p l e , b u f o l a c k o m a t e r i a l . S o r r y M a r t e .

C o m m o d o r e 1 5 2 6 B l u e s : a o n o t h p o o r p e o p l eb o u g h t C o m m o d o r e 1 5 2 6 / M P S 8 0 p r i n t e r . s a p o o r , a l t h o u g hh a v e b e e n q u i t e p l e a s e d w i t h i a f a a i g o e s . T h m a j o rd r a w b a c k w i t h i ( a y o p r o b a b l y w e l l k n o w ) i i t v e r y , v e r yl i m i t e d g r a p h i c s c a p a b i l i t y . h a v e o f t e n t h o u g h t t h a t , g i v e n i t r e p u t a t i o n a s " s m a r t " C o m m o d o r e p e r i p h e r a l , i s h o u l d b p o s s ib l t c r e a t e n e R O c h i p f o i w h i c h w o u l d m a k e i w o r k l i k ea M P 8 0 ( 1 5 2 5 ) . w o u l d b e i n t e r e s t e d i d o i n g i m y s e l f e x c e p tt h a t m s k i l l s a r a l i s o f t w a r e w i t h o n l y l i m i t e d s k i l l s i t h p r a c t i c a l a s p e c t s o f i r m w a r e a n h a r d w a r e . I ' a f r a i d o f r y i n g m p r i n t e r , c o m p u t e r a n d e v e r y o t h e r s o l i d s t a t e e l e c t r o n i c d e v i c e i m h o u s e i d a n y t h i n g m o r e t h a n t a k e c h i p o b o a r d o u a n p u a n o t h e r i n D y o o a n o y o u r r e a d e r s k n o w o a n c o m p a n i e s o i n d i v i d u a l s w h h a v e d o n e s u c h a p u b l i c s e r v i c e ? G i v e n t h a t t h p r i n t e r s e e m s t b e m o d e l e d a f t e r t h M a n n e s m a n T a l l y S p i r i t 8 0 , 1s h o u l d t h i n k t h a t i i q u i t e p o s s i b l e . b e l i e v e t h a t t h S p i r i t 8 h a g r a p h i c s c a p a b i l i t y . I s i m i l a r v e i n , h a v e y o u h e a r d o i n t e r f a c e st h a t a l l o w C o m m o d o r e p r i n t e r s t b a t t a c h e d t o t h e r c o m p u t e r s( e . g . y o u - k n o w - w h o a n c o m p a t i b l e s ) o r a r t h C B p r i n t e r s j u s tt o s m a r t f o t h a t k i n d o d u m b h o o k u p ?

P e t e r C h y n o w e t h , S a s k a t o o n , S a s k a t c h e w a n

P r e p a r e f o f e a s t . W i t h i n t h n e x t f e m o n t h s , i t h i n g s c o n t i n u e t g w e l l , n e s e r i e s o h a r d w a r e m o d i f i c a t i o n k i t s w i l l b e c o m ea v a i l a b l e t h r o u g h T r a n s a c t o r f o t h 1 5 2 6 p r i n t e r . T h m o d s a r i t h r e e s t a g e s . F i r s t , c h a n g e o R O M s t h a t w i l l c l e a n u a l e x i s t i n g1 5 2 6 b u g s , i n c r e a s e t h e p r i n t i n g s p e e d , a n a l s o p r o v i d e w h o l en e s e o c o m m a n d s t h r o u g h p r i n t e r c o m m a n d c h a n n e l . T h e s ec o m m a n d s i n c l u d e w a t t e l l t h 1 5 2 6 t e m u l a t e 1 5 2 5 p r i n t e rf l a w l e s s l y ! U n t i l t h c o d e i c o m p l e t e , I c a n ' t g a n f u r t h e r o t h c o m m a n d s e t .

T h s e c o n d m o k i p r o v i d e s c i r c u i t b o a r d c o n t a i n i n g n e m i c r o p r o c e s s o r a n I o R A t h a t w i l l r e p l a c e t h 1 5 2 6 ' s n o r m a lT h T r a n s a c t o r 1 J a n u a r y 1 9 8 8 ; V o l u m e 8 I s s u e O

Page 16: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 16/84

p r o c e s s o r . T h p u r p o s e : t a l l o w t h 1 5 2 6 t a c c e s s m o r e m e m o r yt h r o u g h b e t t e r c h i p , t h e r e b y a l l o w i n g f o n t s t b d o w n l o a d e d i n t ot h a d d i t i o n a l R A M . T h t h i r d m o k i c o n t a i n s p a n e l o s w i t c h e st b m o u n t e d o t h 1 5 2 6 . T h e s e s w i t c h e s w i l l a l l o w c o n t r o l o T o p - O f - F o r m , O O f f - L i n e a n w h a t e v e r e l s e c a n b e t h o u g h t o f

J u s t b p a t i e n t f o l i t t l e w h i l e l o n g e r t h w a i l o o k s r i g h t n o w ,t h a n s w e r t y o u r 1 5 2 6 w o e s i r i g h t a r o u n d t h c o r n e r .

O n l a s t p o i n t b e f o r e g o i n g o n M S d i d n o t g o u t o f b u s i n e s s . T h e ys i m p l y s t o p p e d s u p p o r t i n g t h C o m m o d o r e m a r k e t p l a c e . T h i s r um o u r h a b e e n s p r e a d i n g f o r q u i t e s o m e t i m e , a n i t ' s t i m e t h a t i s t o p p e d . T h p r e s i d e n t o M S c a l l e d u a b o u t i o n d a a f t e r h r e a d s o m e w h a t e x a g g e r a t e d a c c o u n t o h i c o m p a n y ' s d e m i s e i o u N E W S B R s e c t i o n . N e e d l e s s t s a M S i a l i v e , w e l l , a n s t a y i n g f a a w a y f r o m t h C o m m o d o r e c o m m u n i t y .

U s i n g A I E E E D i s k D r i v e W i t h T h C o m m o d o r e 6 4 : 1 h a v ea l w a y s f e l t t h a t i w o u l d b r e a l a s s e t t h a v e d u a l d i s k d r i v e .w a d i s a p p o i n t e d w h e n l e a r n e d t h a t t h m a n u f a c t u r e r o t h M S D - 2 w a n l o n g e r i b u s i n e s s . H o w e v e r , w a a t t r a c t e d b a a d v e r t i s e m e n t f o i n t e r f a c i n g C o m m o d o r e 4 0 4 0 d u a l d i s k d r i v ew i t h t h C 6 b u s i n g a R T C 6 4 - L I N K I I T h i s i n t e r f a c e a l s or a i s e d t h B A S I C 2 . t 4 . 0 ( 1 6 a d d i t i o n a l d i s k c o m m a n d s ) .

h a v e h a c o n t i n u o u s p r o b l e m s w i t h t h i s a r r a n g e m e n t . T h B A C K U P a n C O P Y c o m m a n d s d n o w o r k i t h e r e i a n k i n d o g l i t c h o t h s o u r c e d i s k . M a n y p r o g r a m s s u c h a P R I N T S H O P a n N E W S R O O M w i n o l o a d f r o m t h 4 0 4 0 . B t y p i n g i S E R I A L , a a b l e t d e f a u l t t h s y s t e m t t h 1 5 4 1 d r i v e a n t h u s l o a d t h ep r o g r a m s . d n o t r e g a r d t h i s a b e i n g s a t i s f a c t o r y a r r a n g e m e n ta t h v e r y r e a s o n s f o a c q u i r i n g d u a l d i s k d r i v e h a v e b e e nd e f e a t e d . I w o u l d a p p e a r t h a t t h e r e a r e i n h e r e n t d i f f e r e n c e s b t w e e n t h t w d r i v e s b u i e s c a p e s m l o g i c a t w h y . d k n o wt h a t l a r g e n u m b e r o p r o g r a m s c a b l o a d e d f r o m b o t h d i s kd r i v e s a n f o r m a t t e d d i s k s f r o m e i t h e r d r i v e a r e c o m p a t i b l e . H a v ea n o y o u r r e a d e r s e n c o u n t e r e d t h i s p r o b l e m a n d , i s o h a v e t h e yb e e n a b l e t s o l v e i t h a v e a l r e a d y i n v e s t e d c o n s i d e r a b l e t i m e a n r f l i i i e y i n t h i s s y s t e m a n w o u l d h a t e t a b a n d o n i n o w . A n h e l py o c a o f f e r w o u l d b a p p r e c i a t e d .

I p r o g r a m u s e s d i s k p r o t e c t i o n o d i r e c t d i s k p r o g r a m m i n gt e c h n i q u e s , i s h o u l d b s t a t e d o t h l a b e l i B O L D P R I N T . B u t i n e v e r i s I a p r o g r a m h a s b e e n w r i t t e n t h a t r e q u i r e s t h 1 5 4 1 t o p e r a t e , s u c h a s P r i n t s h o p o N e w s r o o m , t h e n c h a n c e s a r t h a t y o c a n n o t u s a n o t h e r d r i v e i i t p l a c e . A d v a n c e d p r o g r a m m i n gt e c h n i q u e s t h a t e x p l o i t i n t e r n a l f e a t u r e s o t h 1 5 4 1 d i s k d r i v ec a n n o t p o s s i b l y b e x p e c t e d t w o r k o a n o t h e r d i s k d r i v e . T h 1 5 4 1 a n t h 4 0 4 0 d i f f e r i t h a m o u n t o R A t h e y c o n t a i n , t h u s a g e o t h a t R A M , t h c o d e c o n t a i n e d i R O M , p l u s t h w a i w h i c h t h d r i v e s h a n d l e d a t a . T h 4 0 4 0 i a I E E E - 4 8 8 p a r a l l e ld r i v e . T h 1 5 4 1 i p s e u d o - s e r i a l d r i v e . B l o o k i n g t h r o u g h t h s o u r c e c o d e f o e a c h , s i m i l a r i t i e s a n d i f f e r e n c e s a b o u n d . T h e ys h a r e l i n e a g e , b u t a r e n o t t h s a m e d r i v e s . E n o u g h s a i d .

T h e 4 0 4 0 d r i v e w a n e v e r m e a n t t b b i c o p i e r . I a e r r o r w q e n c o u n t e r e d d u r i n g a B a c k u p o r C o p y , t h e n t h p r o c e d u r e w o u l db o m b o u e v e r y t i m e . T h R T L i n k c a n n o t b e e x p e c t e d t i m p r o v eo t h d r i v e . O n p r o b l e m i n h e r e n t w i t h t h R T L i n k , t h o u g h , w a i t c o n s u m p t i o n o R A M . I o r d e r f o i t p r o v i d e y o w i t h a n I E E E -4 8 i n t e r f a c e p l u s g i v e t h o s e " 1 a d d i t i o n a l d i s k c o m m a n d s " , s o m el i b e r t i e s w e r e t a k e n . I n c o m p a t i b i l i t y w i t h s o m e c o m m e r c i a l p r g r a m s w i l l b f o u n d .

W h a v e b e e n u s i n g t h e n t i r e l i n e o I E E E - 4 8 8 d r i v e s w i t h o u 6 4 f o y e a r s . K a r l r i g h t n o h a 4 0 4 0 a n a n 8 2 5 0 p l u s s e v e r a l8 0 5 0 s , a l h o o k e d t o g e t h e r o v e r o u G - L i n k I E E E - 4 8 8 i n t e r f a c e f o rt h 6 4 A l t h o u g h y o d o * t g e a n e x t r a c o m m a n d s , i d o e s p r o v i d ec l e a n a n f a s t a c c e s s t t h I E E E - 4 8 8 b u s . I t ' s a u g l y i n t e r f a c e , b u i w o r k s .

M a c r o A s s e m b l e r D e s i r e d : a a m w i t s ' e n i d e a l i n g w i t hm C o m m o d o r e M a c r o A s s e m b l e r p a c k a g e . a f i n e u n t i l a t t e m p tt a s s e m b l e a m a c r o . W h e n t h m a c r o i e x p a n d e d , t h a s s e m b l e rg i v e s m a e r r o r . G i v e m t h n a m e s o f e g o o d m a c r oa s s e m b l e r s ( m a k e s u r e t h e y i n c l u d e e x c e l l e n t d o c u m e n t a t i o n ) .n o t i c e d t h a t T r a n s a c t o r u s e s P A L . a u n f a m i l i a r w i t h P A L . I i M A C R O a s s e m b l e r ? W h e r e c a g e i t A n h e l p t h a t y o c a g i v em t g e m s t a r t e d o t h r o a d t m a c h i n e l a n g u a g e p r o f i c i e n c yw o u l d b e g r e a t l y a p p r e c i a t e d .

J e f f r y S B a r n e s , C l a r k s v i l l e , I N U S

P A i n o a m a c r o a s s e m b l e r . I t i s j u s t n i c e 6 5 0 2 a s s e m b l e r t u s w i t h t h P E T / C B M , B 1 2 8 a n d C 6 4 m i c r o c o m p u t e r s . C u r r e n t l y , i i b e i n g m a r k e t e d b y S p i n n a k e r i t h U u n d e r t h " B e t t e r W o r k i n gS o f t w a r e " l a b e l , a l o n g w i t h P O W E R 6 4 a " T h e P r o g r a m m e r s 'T o o l b o x " . T o g e t h e r , P A L a n d P O W E R m a k e t e r r i f i c b u a a n

p r i c e . I ' l l p r o v i d e S p i n n a k e r ' s a d d r e s s , p l u s S p i n n a k e r ' s C a n a d i a nd i s t r i b u t o r ' s a d d r e s s a n s u c h a t h e n o t h i s r e p l y .

T h f i n e s t 6 5 0 2 m a c r o a s s e m b l e r t h a t I h a v e u s e d t d a t e i t h P O W E R A s s e m b l e r ( a k a B u d d y 1 2 a n d B u d d y 6 4 ) , a l s o d i s t r i b u t e db S p i n n a k e r . B u d d y w a s w r i t t e n b C h r i s M i l l e r , n a m e t h a t w i l lb f a m i l i a r t m a n y o o u r e a d e r s . C h r i s h a b e e n r e g u l a r l y w r i t i n gf o u f o r y e a r s . f e i s s u e s a g w p u b l i s h e d C h r i s ' " M r . E d " ,t e x t - e d i t o r f o t h C 6 4 . Y o ' I f i n d f u l l - b l o w n v e r s i o n o f M r . E o e i t h e r B u d d y d i s k . T h i s t e x t e d i t o r i p a r t o f t h e v e r s i o n o B u d d y( E B U D ) t h a t w i l l a s s e m b l e t e x t d a t a f i l e s i R A M . Y o 7 a l s o f i n dv e r s i o n o B u d d y ( B U D ) t h a t w i l l a s s e m b l e r P A L - t y p e s o u r c e f i l e s( i . e . B a s i c s o u r c e ) , a n f i n a l v e r s i o n f o C 1 2 8 u s e r s t h a t w i l la s s e m b l e Z 8 c o d e o n t h C 1 2 8 s i d e . T m a k e t h i s p a c k a g e e v e nb e t t e r , C h r i s t o s s e d o s l e w o m a c r o s o u r c e f i l e s , e x t r a u t i l i t i e sa n w h a t e v e r e l s e h c o u l d t h i n k o f I w a t r u e l a b o u r b l o v e .A n i i n o t c o p y - p r o t e c t e d i t h l e a s t .

T h d o c u m e n t a t i o n i g o o d . B u t h a t w a t b e x p e c t e d c o n s i d e ri n g t h a t C h r i s M i l l e r w r o t e t h d o c s . T h m a n u a l i i n f o r m a t i v e , w e l ll a i d o u t , a n f u w h e n t h g o i n g g e t s t o u g h . I s h o r t , h d i g o o d

j o b . S i n c e t h f i r s t t i m e C h r i s s e n t m c o p y , h a v e b e e n p a s s i n g i a b o u t t p e o p l e t h a t k n e w w o u l d u s i a n a d v i s e C h r i s o h o t m a k e i b e t t e r . L i D e a l , M i k e G a r a m s z e g h y , A u b r e y S t a n l e y a n h a v e c a u s e d C h r i s m o r e t h a n e n o u g h h e a d a c h e s , b u t d a t e , h h a s a l w a y s c o m e t h r o u g h . B u d d y i p e r h a p s t h n i c e s t a n m o s tv e r s a t i l e a s s e m b l e r t h a t y o u ' l l f i n d f o t h C o m m o d o r e l i n e o c o m p u t e r s .

U D i s t r i b u t o rS p i n n a k e rO n K e n d a l S t r e e tC a m b r i d g e , M A 0 2 1 3 9( 6 1 7 ) 4 9 4 - 1 2 0 08 0 0 - 8 2 6 - 0 7 0 6 t o l l - f r e e

C a n a d i a n D i s t r i b u t o rB e a m s c o p e C a n a d a I n c .1 1 C o m m a n d e r B l v d .S c a r b o r o u g h , O n t a r i o , C a n a d aM 1 S 3 H 7 ( 4 1 6 ) 2 9 1 - 0 0 0 08 0 0 - 2 6 8 - 3 5 2 1 t o l l - f r e e ( O n t a r i o o n l y )8 0 0 - 2 6 8 - 5 5 3 5 t o l l - f r e e ( r e s t o C a n a d a )

T h T r a n s a c t o r 1 J a n u a r y 1 9 8 S : V o l u m e 8 I s s u e O

Page 17: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 17/84

T r a n z b l o o p u r zG A F I L L , V o l 5 , I s s u e 6 , p a g e 5 7

T h i s o n g o e s b a c k a l m o s t t h r e e y e a r s ! P a u l B l a i r o f H o l d e r ,A u s t r a l i a , w r i t e s , " C o u l d p o i n t o u v e r y m i n o r b u t i m p o r t a n tg l i t c h i n G A F I L L T h p r o b l e m i i l i n e 2 3 0 . I t h o r d e r o f i l eo p e n i n g i r e v e r s e d , t h e p r o g r a m r u n s q u i t e h a p p i l y o m 4 0 4 0 .S o s u g g e s t l i n e 2 3 s h o u l d r e a d :

2 3 O P E N 5 , 8 , 5 / r . O P E N 1 5 , 8 , 1 5 : R E e t

I d o n ' t d t h i s , t h e e r r o r l i g h t f l a s h e s , t h e d r i v e g e t s h y s t e r i c a l , a n t h p r o g r a m g e t s k n o t t e d u p N o p r e t t y s i g h t .

V v n e v e r w o r k e d o u q u i t e w h t h i s o r d e r o f t h i n g s i r e q u i r e d . R a W e s t , i h i o p u s m a g n u s o P E p r o g r a m m i n g , g i v e s i b o t h w a y s

a y o h a i o n p a g e 1 8 ( t h e i n t r o d u c t i o n t u s e o f d i s k d r i v e s )t h e n u s e s t h e r e v e r s e o r d e r i n a l l t h w o r k i n g e x a m p l e s . T h e r e ' so b v i o u s l y r e a s o n , b u j u s t d o n ' t k n o w w h a t i i s M a y b e s o m e o n ee l s e d o e s . "

I d e a s , a n y o n e ?

G a r b a g e C o l l e c t o r R e v e a l e d , V o l 8 , I s s u e 2 9 p a g e 3

p r o b l e m t h a t w o n ' t a f f e c t c o r r e c t o p e r a t i o n o t h p r o g r a m , b u a i n t e r e s t i n g o n t l o o k a t O l i n e s 1 1 4 0 , 1 1 5 0 a n 1 1 8 0 o t h P A s o u r c e l i s t i n g , t h w o r d " c o l l e c t " i t h c o m m e n t f i e l d h a b e e nr e p l a c e d b t h w o r d " i n p u t " . T h i s , a a u t h o r M i c h a e l G r a h a m q u i t ec o r r e c t l y p o i n t s o u t , i t h r e s u l t o f t o k e n i z i n g t h e s o u r c e c o d e o o n m a c h i n e , a n l i s t i n g i o a n o t h e r .

I n s i d e V i e w b i t s , p a g e

I t u r n s o u t t h a t t h i s p r o g r a m w i l l n o w o r k o 6 4 t h a t h a v e R O v e r s i o n 2 b e c a u s e i s t o r e s t d i s p l a y m e m o r y w i t h o u t m o d i f y i n gt h c o r r e s p o n d i n g c o l o u r m e m o r y . I y o h a v e a o l d e r 6 a n f i n dt h a t t h p r o g r a m b e h a v e s s t r a n g e l y , t h a t ' s p r o b a b l y t h e r e a s o n . O u a p o l o g i e s t a n y o n e w h t y p e d i i a n c a n ' t u s i t u n f o r t u n a t e l y ,i t ' s n o p o s s i b l e a n u s u a l l y n o n e c e s s a r y f o u t t e s te v e r y t h i n g o a l R O v e r s i o n s .

C 1 2 8 P r o g r a m m e r ' s A i F i L e t t e r s , p a g e 1

A f t e r s t a t i n g t h a t t h n e v e r s i o n o C 1 2 8 P r o g r a m m e r ' s A i d w o u l db f i x e d a n p u o T r a n s a c t o r D i s k # 2 0 , w f o u n d t h a t t h c o d ec h a n g e s w e r e r e s p o n s i b l e f o n o o n l y f i x i n g p r o b l e m s , b u t c r e a t i n gs o m e n e o n e s t o o . I w g e g o o d o n e w o r k i n g , w e ' l l p u i o d i s k a n l e y o k n o w .

S w i t c h a b l e R S - 2 3 2 I n t e r f a c e , p a g e 2 1

T h c i r c u i t d i a g r a m l e f t o u t a f e l a b e l s : t h I C s , s t a r t i n g w i t h t h e1 4 8 8 a n m o v i n g c l o c k w i s e , s h o u l d b l a b e l l e d U t h r o u g h U 5 ; t h d i o d e s a t h u p p e r l e f t o t h d i a g r a m a r e , f r o m t o t b o t t o m , D l D a n D 3 t h c a p a c i t o r s j u s t t t h r i g h t o t h d i o d e s s h o u l d b l a b e l l e d C a n C 2 a g a i n f r o m t o t b o t t o m . A l s o , t h e 1 N 4 0 0 1d i o d e s , a t h e y a r n a m e d i t h d i a g r a m , a r i n c o r r e c t l y r e f e r r e d t

a 1 N 0 0 1 i t h p a r t s l i s t . A n o t h e r p r o b l e m w i t h t h d i a g r a m : t h s m a l l n o t e a t h b o t t o m s a y i n g t g r o u n d a l u n u s e d p i n s o t h 1 4 8 8 a n d 1 4 8 9 s i i n c o r r e c t : o n l y t h 1 4 8 8 s h o u l d h a v e i t u n u s e dp i n s g r o u n d e d ; t h u n u s e d p i n s o t h 1 4 8 9 s s h o u l d b l e f t a N / n c o n n e c t i o n . F i n a l l y , t h e v o l t a g e r a t i n g s f o t h e d i s k c a p a c i t o r s i t h p a r t s l i s t a r n o s p e c i f i e d t h r a t i n g s a r u n i m p o r t a n t , a n t h l o w e s t y o c a g e w i l l d o

G e t t i n g A r o u n d W i t h G o g o D a n c e r , p a g e 4 7

T h e r e w e r e f e s m a l l b u g s i t h G o g o D a n c e r p r o g r a m ; h e r e i t h r e v i s e d B A S I C l o a d e r . T h i s n e v e r s i o n a r r i v e d a H a b o u td a y s a f t e r w w e n t t o p r e s s . A l t h o u g h t h o r i g i n a l w o r k s i m o s tc a s e , i w i l l n o t p r o c e s s l i n e l a b e l s a n d c o m p u t e d l i n e n u m b e r sb e y o n d " T H E N " s t a t e m e n t . T h i s n e o n d o e s . T h c h a n g e s f r o mt h o r i g i n a l l i s t i n g a r s h o w n i b o l d f a c e :

D E G E H P O A G J B K L P

K I

B H E D P B J I E H C

K E I

M H P H

O M G C

1 0 0 r e m s a v e ' 0 : g o g o w e d g e . l d r B , 81 1 0 r e m * * w r i t t e n b c h r i s m i l l e r , k i t c h e n e r , O n t a r i o1 2 0 r e m1 3 f o = 4 9 1 5 2 t 4 9 3 9 5 r e a d x1 4 0 p o k e j , x : c c x n e x t1 5 i c h < > 3 1 6 1 8 t h e n p r i n t " c h e c k s u m e r r o r " : e n d '1 6 0 r e m1 7 d a t a 1 6 9 , 1 1 , 1 4 1 , 8 3 , 1 6 9 , 1 9 2 , 1 4 11 8 d a t a 9 , 3 , 9 6 3 2 , 1 1 5 , 0 3 2 2 1 9 d a t a 1 9 2 , 7 6 , 1 7 4 , 1 6 7 , 2 0 1 , 1 3 9 , 2 4 0 , 1 52 0 d a t a 2 0 1 , 1 3 7 , 2 4 0 , 7 7 , 2 0 1 , 1 4 1 , 2 4 0 , 4 2 0 1 d a t a 2 0 1 , 6 4 , 2 0 8 , 3 7 7 6 , 2 4 8 , 1 6 8 , 3 2 0 3 d a t a 1 1 5 , 0 3 2 , 1 5 8 , 1 7 3 , 1 6 5 , 9 7 , 2 0 82 0 d a t a 6 3 2 9 , 1 6 9 , 7 6 , 2 5 1 , 1 6 8 , 3 2 0 d a t a i 2 1 0 , 2 0 1 , 1 3 7 , 2 4 0 , 4 3 , 1 6 9 , 1 6 72 0 d a t a 3 2 , 2 5 5 , 1 7 4 , 2 0 1 , 1 2 8 , 1 4 4 , 3 7 , 1 7 62 1 0 d a t a 2 0 3 , 3 2 , 1 2 4 , 0 7 6 , 2 3 72 2 d a t a 1 6 7 , 1 6 9 , 3 3 2 , 2 5 1 , 1 6 3 , 1 6 5 , 1 2 32 3 d a t a 7 2 , 1 6 5 , 1 2 2 , 7 2 , 1 6 5 , 5 8 7 2 , 1 6 52 4 d a t a 5 7 7 2 , 1 6 9 , 1 4 1 , 7 2 3 2 , 1 0 5 , 1 9 22 5 d a t a 7 6 , 1 7 4 , 1 6 7 , 3 2 , 1 1 5 , 0 , 2 0 1 , 6 2 6 d a t a 2 4 0 , 1 2 3 2 , 1 2 4 , 0 3 2 , 1 5 8 , 1 7 32 7 d a t a 3 2 , 2 4 7 , 1 8 3 , 7 6 , 1 6 3 , 1 6 8 , 3 2 2 8 d a t a 1 6 9 , 1 3 6 , 1 7 7 , 1 2 2 , 2 0 1 , 3 6 2 0 8 , 3 2 9 d a t a 3 2 , 1 1 5 , 0 3 2 , 1 3 9 , 1 7 6 , 1 6 0 ,3 0 d a t a 1 7 7 , 7 1 , 2 4 0 , 9 1 , 1 3 3 , 2 5 5 , 2 0 0 , 1 7 73 1 d a t a 7 1 , 1 7 0 , 2 0 0 , 1 7 7 , 7 1 , 1 6 8 , 1 3 8 , 1 > 0 83 2 d a t a 1 , 1 3 6 , 2 0 2 , 1 3 4 , 2 5 3 , 1 3 2 , 2 5 4 , 7 3 3 d a t a 1 7 8 , 1 9 2 , 1 3 2 , 2 5 5 , 1 6 5 , 1 2 2 , 1 3 3 , 2 5 3 4 d a t a 1 6 5 , 1 2 3 , 1 3 3 , 2 5 4 , 1 6 5 , 4 3 , 1 3 3 , 9 3 5 d a t a 1 6 5 , 4 4 , 1 3 3 , 9 6 , 1 6 0 , 4 , 1 6 6 , 2 5 53 6 d a t a 1 7 7 , 9 5 , 2 0 1 , 6 4 , 2 0 8 , 2 5 , 1 3 6 , 1 3 63 7 d a t a 1 3 6 , 1 7 7 , 2 5 3 , 2 0 0 , 2 0 0 , 2 0 0 , 2 0 0 , 2 0 3 8 d a t a 9 5 , 2 0 8 , 1 2 , 2 0 2 , 2 0 8 , 2 4 0 , 2 0 0 , 1 7 7

2 3 , 2 0 1 , 5 8 , 2 4 0 , 1 9 , 1 6 09 5 , 1 7 0 , 2 0 0 , 1 7 7 , 9 5 , 1 3 39 5 , 1 7 7 , 9 5 , 2 0 8 , 2 0 5 , 7 5 6 7 6 , 1 9 7 , 1 6 8

3 9 d a t a 9 5 , 2 4 0 ,4 0 d a t a 0 , 1 7 7 ,4 1 d a t a 9 6 , 1 3 4 ,4 2 d a t a 2 2 7 , 1 6 8 ,

A d d i n g A n a l o g R G C a p a b i l i t y t t h 1 9 0 2 M o n i t o r

N o t h i n g w r o n g w i t h t h i s o n e , e x c e p t t h a t i m i g h t b l i t t l e h a r d t f i n d u s i n g o u T a b l e o C o n t e n t s . I t ' s o p a g e 7 2

T h T r a n s a c t o r 1 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 18: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 18/84

T e l e C o l u m nT r a n s a c t o r O n l i n e C o n f e r e n c e

S a t u r d a y , N o v e m b e r 2 a 1 0 : 0 0 P E a s t e r n ( 7 : 0 0 P a c i f i c )i C o m p u S e r v e ' s C B M C O M C

A e v e n i n g w i t hB e D u n n i n g t o n a n M a r k B r o w n

o I N F O M a g a z i n e

O n l i n e w i t h B e a n M a r k

I y o u ' r e l o o k i n g f o r i n f o o a p i e c e o C o m m o d o r e r e l a t e d h a r d w a r e o s o f t w a r e , c h a n c e s a r g o o d t h a n M a r k o B e h a v e i t g u e s s t h a t ' sw h a y t h e i r m a g a z i n e i c a l l e d " I N F O " , a n i t ' s o n o o u f a v o u r i t e s .I N F O i p r e s s i n g n e a r 2 0 0 , 0 0 0 c o p i e s p e i s s u e n o a n h a w o r l d w i d ed i s t r i b u t i o n .

I N F O ' s c l a i m t f a m e i " t h e f i r s t p e r s o n a l c o m p u t e r m a g a z i n e p r d u c e d e n t i r e l y w i t h p e r s o n a l c o m p u t e r s " . S i y o u ' r e l o o k i n g f o s o m ea d v i c e a b o u t d e s k t o p p u b l i s h i n g , y o u ' l l w a n t t t a l k t B e a n M a r kt h e y ' v e b e e n a i s i n c e b e f o r e t h e t e r m w a i n v e n t e d .

S i n c e w e ' r e s t a r t i n g a A m i g a o n l y p u b l i c a t i o n , w e ' r e a l s o l o o k i n gf o r w a r d t a s k i n g t h e m i t h e y h a v e a n s i m i l a r p l a n s o f t h e i r o w n .

S d o n ' t m i s s o u t ! S i g n o ( u s e 3 0 0 b a u d i t ' s c h e a p e r ) a n e n t e r G C B M C O M . A t h m a i n F u n c t i o n p r o m p t e n t e r " C O " w e ' l l u s t h d e f a u l t C c h a n n e l .

D o n ' t B F o o l e d

T h a d f o G E n i e c i r c u l a t i n g i t h m a j o r m a g s c o m p a r e C o m p uS e r v e ' s $ 3 9 . 9 5 r e g i s t r a t i o n f e a g a i n s t t h e i r $ 1 8 . 0 0 f e t s i g n u p . T h $ 3 9 . 9 5 c h a r g e w i l l i n d e e d g e y o r e g i s t e r e d f o u s i n g C o m p u S e r v e ,b u t h a t a l s o i n c l u d e s m a n u a l s , s u b s c r i p t i o n t O n l i n e T o d a y ( C o m p uS e r v e ' s o w m o n t h l y m a g a z i n e ) a n $ 2 5 . 0 0 o p a i d u s a g e t i m e . I ' m n o ts u r e w h a t G E n i e t h r o w s i f o t h 1 b u c k s , j u s t a s I ' m e q u a l l y u n s u r ew h a t T h S o u r c e g i v e s y o f o t h e i r $ 4 9 . 9 5 . A l l f i g u r e s i U d o u g h ,t o o !

H o w e v e r , C o m p u S e r v e o f f e r s e x t e n s i v e o n l i n e h e l p a a l p r o m p t s a n f o t h o s e w i t h a n t e l e c o m p u t i n g e x p e r i e n c e a a l l , t h m a n u a l s q u i c k l yb e c o m e u n n e c e s s a r y .

W a n t t s a v e 4 b u c k s a n g e s o m e t h i n g f o n o t h i n g a t h s a m e t i m e ?T h e r e ' s a n o t h e r w a t g e C o m p u S e r v e m e m b e r s h i p . I t ' s c a l l e d" C o m p u S e r v e I n t r o P a k " . T h c o s t ? A b s o l u t e l y F R E E ! A n i c o m e sw i t h a $ 1 5 . 0 0 t i m e c r e d i t s y o c a t r i o u f o a w h i l e t s e i y o l i k e i t A l y o n e e d i c r e d i t c a r d .

J u s t s e n d u s e l f a d d r e s s e d e n v e l o p e ( p l e a s e , n s t a m p s s a v e t h e mf o C h r i s t m a s c a r d s ) . W e ' l l t u r n i a r o u n d w i t h a I n t r o P a i n s i d e ( o n ep e p e r s o n p l e a s e ) . W h e n y o g e i t y o u ' l l n o t i c e t h e r e ' s " s n a p p a c k "a t h e c e n t e r o t h b o o k l e t . I n s i d e y o u ' l l f i n d a a c c o u n t n u m b e r a n

p a s s w o r d . A t h b a c k o t h b o o k a r p h o n e n u m b e r s f o h u n d r e d s o C o m p u S e r v e n e t w o r k n o d e s , a s w e l l a s n u m b e r s f o t h e o t h e r d a t ac a r r i e r s s u c h a T y m n e t a n T e l e n e t . T h i n s i d e b a c k c o v e r w i l l s h o wh o t g e c o n n e c t e d t t h e s e r v i c e a f t e r y o u ' v e e s t a b l i s h e d c o n n e ct i o n w i t h t h n o d e .

T h " H o s t N a m e " i " C I S " - y o u m a s e t h i s , p r o b a b l y n o t . N o e n t e ry o u r a c c o u n t n u m b e r , h i R E T U R N , a n f o l l o w w i t h y o u r p a s s w o r d .C o m p u S e r v e w i l l n o t i c e t h a t t h i s i y o u r f i r s t t i m e o a n a s y o f o m e t h o d o p a y m e n t s h a v e y o u r c r e d i t c a r d n u m b e r h a n d y . C h e q u e -F r e e i a n o t h e r p a y m e n t m e t h o d o f f e r e d b C I S , b u b e l i e v e t h i s m a r e q u i r e v a l i d a t i o n p e r i o d . R e g a r d l e s s , y o u r f i r s t $ 1 5 . 0 0 o c o n n e c tt i m e i f r e e i y o e n t e r c r e d i t c a r d n u m b e r y o u ' l l b s e n t s t r a i g h ti n t o t h s y s t e m .

A b o u t t w w e e k s l a t e r , C o m p u S e r v e w i l l s e n d y o n e p a s s w o r d .T h i s i t p r o t e c t a g a i n s t u n a u t h o r i z e d u s e o y o u r c r e d i t c a r d t h n e p a s s w o r d g o e s t t h a d d r e s s t h a t b e l o n g s t y o u r c a r d n u m b e r . T c h a n g e y o u r p a s s w o r d a g a i n , e n t e r G P A S S W O R D a a n p r o m p t .

D e p e n d i n g o t h e t r a n s m i s s i o n s p e e d y o u c o n n e c t a t $ 1 5 . 0 0 w i l l g e y o d i f f e r e n t a m o u n t s o f f r e e t i m e . A t 1 2 0 0 b p s , $ 1 5 . 0 0 w i l l c o v e r y o f o j u s t o v e r a h o u r ; a 3 0 b p s , $ 1 i g o o d f o a b o u t 2 V h o u r s ( d o e sn o i n c l u d e T e l e n e t , T y m n e t o D a t a P a c c h a r g e s ) . A l s o i t h b a c k o t h I n t r o P a a r e a c c e s s i n s t r u c t i o n s f o h u n d r e d s o f o r u m s w i t h i n t h es y s t e m . E n t e r G C B M P R G o G C B M C O M , f o e x a m p l e , a n y o u ' l lh a v e n a v i g a t e d y o u r w a d i r e c t l y t o t h f o r u m s m a n a g e d b u a t h T O y o u r f i r s t e n t r y t t h f o r u m s y o u ' l l b p r e s e n t e d w i t h t h V i s i t o r ' sM e n u , b u t p l e a s e s e l e c t t h e " J o i n " o p t i o n t h e r e ' s n e x t r a c h a r g e f o t h i s , a n b j o i n i n g y o u ' l l b a l l o w e d t L e a v e m e s s a g e s a n d d o w n l o a dp r o g r a m s f r o m t h D a t a L i b r a r i e s . S L e a v e u s m e s s a g e - w c h e c ki n t o t h f o r u m s e v e r y d a a n w e ' l l h a v e a r e p l y o u t t y o u s u a l l yw i t h i n 2 h o u r s .

T h s a m e a d m e n t i o n e d a b o v e s h o w G E n i e ' s c o n n e c t t i m e c h a r g e s t b l e s s t h a n T h S o u r c e a n C o m p u S e r v e ' s . B u r e m e m b e r , " y o u g e w h a t y o u p a y f o r " a n d , b a s e d o r e p o r t s I ' v e r e c e i v e d v i E m a i l ,t e l e c o m p u t i n g s e r v i c e s a r e n e x c e p t i o n t o t h i s r u l e . A l s o , C o m p u S e r v ei o n o t h o n l y s e r v i c e s w i t h t h e i r o w n a t i o n w i d e n e t w o r k . F r o mm o s t m a j o r m e t r o s , C I i l o c a l c a l l a n t h n e t w o r k c h a r g e i 2 c e n t sp e h o u r . M o s t o t h e r s c a o n l y b a c c e s s e d u s i n g t h i n d e p e n d e n t d a t ac a r r i e r s , o b d i a l i n g l o n g d i s t a n c e . A l t h o u g h T y m n e t , T e l e n e t a n D a t a P a c o f f e r l o c a l n u m b e r s i m o s t a r e a s , u s i n g t h e i r s e r v i c e s a d d ss u r c h a r g e t h a t m a k e s t h e b a s i c h o u r l y r a t e s u b s t a n t i a l l y h i g h e r .

T h T r a n s a c t o r 1 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e 0

Page 19: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 19/84

W e ' v e h a s e v e r a l r e v i e w s p u b l i s h e d i r e c e n t i s s u e s b u s e r s o t h m a j o r t e l e c o m p u t i n g s e r v i c e s , b u t o t h e r o p i n i o n s a r e a l w a y s w e l c o m e .d o n ' t t h i n k G E n i e , B I o P e o p l e L i n k h a v e b e e n i t h T e l e C o l u m ns p o t l i g h t y e m a y b e s o m e o n e w h u s e s s e v e r a l s e r v i c e s w o u l d b i g o o d p o s i t i o n t w r i t e ' e u p . . . s o m e o n e t h a t c o u l d b e d r a g g e d a w a yf r o m h i A m i g a f o a h o u r o s o . . . s o m e o n e l i k e . . . T i G r a n t h a mp e r h a p s ( h i n t , h i n t ) .

S u n d a y N i g h t C O w i t h N i c k S u l l i v a n e a l

C a r e t c h a t o n l i n e ? P e r h a p s y o u ' r e l o o k i n g f o p r o g r a m t h a t i s n ' t i t h D a t a L i b r a r i e s . M a y b e y o u ' v e j u s t b o u g h t s o m e t h i n g n e w i t hf e a t u r e s n o e x p l a i n e d v e r y w e l l i t h m a n u a l . O y o u ' v e b e e nw o r k i n g o p r o g r a m a l w e e k e n d a n d y o u j u s t c a n ' t s e e m t g e t p a s ts t u b b o r n b u g . c o u l d t h i n k o h u n d r e d o t h e r r e a s o n s , b u t i a n o t h e m h a p p e j i t c o i n c i d e w i t h S u n d a y n i g h t a 1 ( o t h e r e a b o u t s ) , s i g no n G C B M P R G a n e n t e r t h C a r e a . N i c k S u l l i v a n a n d a n y o t h e rs y s o p s , a s s i s t a n t s y s o p s , o j u s t p l a i n k n o w l e d g a b l e t y p e s , w i l l b m a k i n g r e g u l a r a p p e a r a n c e s i t h c o n f e r e n c i n g a r e a e v e r y S u n d a y a 1 0 B t h w a y , u s 3 0 0 b a u d - i t ' s c h e a p e r a n d y o u c a n ' t t y p e a 1 2 c h a r a c t e r s p e r s e c o n d a n y w a y .

A t t e n t i o n A n c h o r 6 4 8 0 U s e r s

T h o u g h t y o b o u g h t a l e m o n , d i y o u ? M o s t 6 4 8 0 o w n e r s I ' v e t a l k e d t h a v e a l b u t g i v e n u o t h " b l a c k s h e e p " o m o d e m s f o C o m m o d o r ee q u i p m e n t . B u t t h e r e i h o p e . W o r d i t h a t v e r s i o n 1 . o A u t o C o mw o r k s p r e t t y w e l l . O C o m p u S e r v e t h C 6 v e r s i o n h a s c r o l l i n gp r o b l e m s , b u c a b f i x e d b c h a n g i n g y o u r t e r m i n a l t y p e t " C R T " i G P R O F I L E .

T g e c o p y , c a l l A n c h o r A u t o m a t i o n a ( 8 1 8 ) 9 9 7 - 6 4 9 3 .

C B T e r m N o A v a i l a b l e i C B M C O MO n o t h m o s t p o p u l a r a n m o s t p o w e r f u l t e r m i n a l p r o g r a m s f o t h C 6 i n o a v a i l a b l e i t h C B M C O M f o r u m . C B T e r m f e a t u r e s i n c l u d eX m o d e m p r o t o c o l t r a n s f e r c a p a b i l i t i e s w i t h a u t o m a t i c I m a g e h e a d e rs t r i p p i n g f o d o w n l o a d i n g p r o g r a m s u p l o a d e d t C o m p u S e r v e w i t hp r o t o c o l . I h a a s o f t w a r e 8 c o l u m n s c r e e n m o d e , w i t h d u a l i n c o m i n ga n o u t g o i n g w i n d o w s . T h e r e a r d o z e n s o s u p p o r t f i l e s a n o v e r l a ym o d u l e s a v a i l a b l e t o o , i n c l u d i n g a o v e r l a y t m a k e C B T e r m w o r k w i t ht h A n c h o r 6 4 8 0 .

D o n ' t h a v e p r o g r a m t h a t w i l l d o w n l o a d u s i n g X m o d e m p r o t o c o l ?c a t c h - 2 2 s i t u a t i o n b e c a u s e w i t h o u t s u c h a p r o g r a m , y o c a n ' t d o w n l o a dC B T e r m s t h a t y o c a u s i t d o w n l o a d o t h e r p r o g r a m s . N o t w o r r y , m a t e . S i g n o t C B M C O M a n w e ' l l d i r e c t y o t p r o g r a mc a l l e d B X B o o t X m o d e m D o w n l o a d . T h i s s h o r t l i t t l e B A S I C p r o g r a mi e a s y t t y p e i a n c a n b e u s e d j u s t l o n g e n o u g h t g e m o r ec o m p r e h e n s i v e t e r m i n a l e m u l a t o r . . . l i k e C B T e r m ! O n c e y o h a v eC B T e r m y o d i s c a r d B X a n e n j o y y o u r f u l l - f e a t u r e d a c c e s s t o n o t h m o s t c o m p r e h e n s i v e c o l l e c t i o n o p r o g r a m s a v a i l a b l e o n l i n e o ra n y w h e r e .

C a l l W a i t i n g D i s a b l e

D y o h a v e c a l l w a i t i n g ? Y o k n o w , t h a t h a n d y l i t t l e t e l e p h o n e f e a t u r ey o p a e x t r a f o e v e r y m o n t h ? I t ' s g r e a t w h e n y o u ' r e o t h p h o n e l o

w h e n s o m e o n e e l s e c a l l s , y o h e a r a b e e p a n d p u y o u r f i r s t c a l l o h o l d w h i l e y o u a n s w e r t h e s e c o n d .

T h a t b e e p , h o w e v e r , c a r e a l l y m e s s u p a n o n l i n e c o n n e c t i o n , a s m a n yh a v e f o u n d o u t h h a r d w a y . J u s t b e f o r e t h e b e e p , t h e r e ' s u s u a l l y s p l i ts e c o n d o f s i l e n c e t h a t m o d e m w o u l d c o n s i d e r a s " n c o n n e c t i o n "t h c a r r i e r i l o s t f o r j u s t l o n g e n o u g h t m a k e t h c a l l d i s c o n n e c t .W h e n i h a p p e n s , a b o u t a l y o c a d i a n s w e r y o u r s e c o n d c a l l .

R e c o g n i z i n g t h i s p r o b l e m , m o s t t e l e p h o n e s e r v i c e s a r e n o o f f e r i n g" c a l l - w a i t i n g d i s a b l e " . B d i a l i n g " * 7 0 " , y o u r c a l l - w a i t i n g f e a t u r e i t e m p o r a r i l y d i s a b l e d a t h m a i n s w i t c h i n g s t a t i o n . Y o u ' l l t h e n h e a r as e c o n d d i a l t o n e , a w h i c h p o i n t y o p r o c e e d w i t h t h e n u m b e r o t h s e r v i c e y o u w a n t t c a l l . I y o d o n ' t h a v e t o u c h t o n e , d i a l i n g " 1 1 7 0 "w o r k s t h s a m e w a y . I n e i t h e r w o r k s , t r c a l l i n g y o u r b u s i n e s s o f f i c e f o ra a n s w e r , a n t h e n p l e a s e s h a r e i w i t h u s

O a u t o d i a l H a y e s a n H a y e s c o m p a t i b l e m o d e m s , t h c o m m a n d" A T D T * 7 0 , 5 5 5 1 2 1 2 " u s u a l l y w o r k s , w h e r e " 5 5 5 1 2 1 2 " i s o c o u r s e ,t h n u m b e r o t h s e r v i c e . I y o u r m o d e m d o e s n ' t a c c e p t t h a s t e r i s k ,u s " A T D T 1 1 7 0 , 5 5 5 1 2 1 2 " . T h c o m m a g i v e s t w s e c o n d p a u s e t w a i t f o t h s e c o n d d i a l t o n e b e f o r e p r o c e e d i n g w i t h t h n u m b e r .

I ' v e h e a r d d i f f e r e n t r e p o r t s o r e - e n a b l i n g y o u r c a l l - w a i t i n g f e a t u r e . I t h U . S . , i s e e m s t v a r y d e p e n d i n g o t h c o m p a n y s e r v i c i n g y o u rc a l l s . S o m e s a y o m u s t d i a l * 7 o 1 1 7 0 t o r e - a c t i v a t e ; o t h e r s s a i t ' sa u t o m a t i c a l l y r e - e n a b l e d w h e n y o h a n g u p I C a n a d a i d o e s n ' tm a t t e r , b e c a u s e c a n ' t g e i t o d i s a b l e , l e a l o n e r e - e n a b l e . W h e nc a l l e d o u l o c a l b u s i n e s s o f f i c e w a t o l d t h e r e ' s n w a t d w h a t I ' d e s c r i b i n g , b u a g a i n , t h s e r v i c e m a o m a n o b a v a i l a b l e i o t h e ra r e a s c a l l t h e b u s i n e s s o f f i c e n u m b e r o y o u r p h o n e b i l l t f i n d o u f o s u r e .

M i t e y M P r o g r a m m i n g T i p s

B e f o r e w l o o f f , h e r e ' s t e c h n i c a l t i d b i t t a k e n f r o m a r e p l y b G a F a r m a n e r t q u e s t i o n a b o u t t h M i t e y M m o d e m o C B M P R G :

T h M i t e y M o i a d d i t i o n t h o o k , u s e s l i n e s o f t h u s e r p o r t t c o n t r o lt h c a r r i e r t o n e a n t h a n s w e r / o r i g i n a t e m o d e . T o m a k e s u r e a l t h l i n e s a r s e u p r o p e r l y , u s P O K E 5 6 5 7 9 , 3 8 . T h i s i u n i v e r s a l p o k e ;i w o r k s w i t h e v e r y m o d e m .

W i t h t h M i t e y M m o d e m , y o d e a l w i t h t h e f o l l o w i n g l i n e s b r e a d i n go c h a n g i n g t h f o l l o w i n g b i t s i l o c a t i o n 5 6 5 7 7 ( b i t i L S B , b i i M S B ) :

H o o k b i z e r o / o n l i n e o n e / o f f l i n eC a r r i e r b i 4 z e r o / n o c a r r i e r o n e / c a r r i e r p r e s e n tR i n g b i 3 z e r o / r i n g i n g o n e / n o r i n gT o n e b i z e r o / c a r r i e r t o n e o n e / c a r r i e r t o n e o f M o d e b i t l z e r o / a n s w e r m o d e o n e / o r i g i n a t e m o d e

( F o r a B B S , y o u ' l l w a n t t b i a n s w e r m o d e ; c a l l e r s w i l l u s o r i g i n a t e . )

F o a n s w e r i n g c a l l , y o u ' d d t h f o l l o w i n g : W a i t f o r i n g w i t h b i 3 g o n l i n e w i t h b i t 5 ; p u o y o u r c a r r i e r t o n e w i t h b i 2 w a i t f o c a r r i e ru s i n g b i 4

I t ' s g o o d i d e a t c o u n t d o w n n u m b e r o o c c u r e n c e s o r i n g - d e t e c tb e f o r e r e g i s t e r i n g i a r i n g . T h r i n g d e t e c t l i n e w i l l a l t e r n a t eb e t w e e n z e r o a n d o n e t h r o u g h o u t r i n g , a t t h r i n g f r e q u e n c y .O c c a s i o n a l l y s i n g l e r i n g t r a n s i t i o n w i l l o c c u r w i t h o u t a a c t u a l r i n g ,s o c o u n t i n g o f a f e w t r a n s i t i o n s b e f o r e a c c e p t i n g \ v i l l e n s u r e r e l i a b l er i n g d e t e c t i o n .

T h T r a n s a c t o r 1 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 20: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 20/84

T h P r o j e c t o rP a r t I

I a A d a mV a n c o u v e i y B C

C o p y r i g h t 1 9 8 7 I a A d a m

. , T h e m o s t s i g n i f i c a n t i m p r o v e m e n t i t h t r e a t m e n t o h i d d e n l i n e s . . .

P a r t o t h P r o j e c t o r w a p u b l i s h e d i V o l u m e I s s u e o T r a n s a c t o r . I p r o d u c e s a t h r e e - d i m e n s i o n a l p l o t o f a n m a t h e m a t ic a f o r m u l a o t h s c r e e n o t h C o m m o d o r e 6 4 u s i n g G a r y K i z i a k ' sH i g h - R e s g r a p h i c s u t i l i t y f r o m V o l u m e 5 I s s u e 6 T h a t p r o g r a m h a n o b e e n i m p r o v e d t h r o u g h t h e a d d i t i o n o s e v e r a l n e c a p a b i l it i e s . I h a a l s o b e e n e x t e n d e d t t h n e w C o m m o d o r e 1 2 8 .

H i d d e n L i n e s

T h m o s t s i g n i f i c a n t i m p r o v e m e n t t t h r o u t i n e s i t h t r e a t m e n t o h i d d e n l i n e s . T h c l a r i t y o f t h p l o t i g r e a t l y e n h a n c e d b y d e l e t i n gl i n e s t h a t s h o u l d b h i d d e n f r o m v i e w b y o t h e r p a r t s o t h s u b j e c t .A c h i e v i n g t h i s r e q u i r e d s o m e m o d i f i c a t i o n t t h o r i g i n a l p l o t t i n gr o u t i n e s , s y o w i l l h a v e t o b t a i n t h e r e v i s e d m a c h i n e c o d e i o r d e r t s e i i a c t i o n o t h 6 4

' C o n c e p t u a l l y , r e m o v i n g h i d d e n l i n e s i n o d i f f i c u l t , i o n m a k e ss o m e a s s u m p t i o n s a b o u t t h s o l i d s h a p e b e i n g p l o t t e d . I t h i s c a s e ,\ ^ a s s u m e t h a t t h s h a p e i a u p w a r d - f a c i n g s u r f a c e t h a t d o e s n o d o u b l e b a c k o i t s e l f ; t h a t i s t h e r e a r n c a v e s a n t h b o t t o ms u r f a c e , i a n y , i n o v i s i b l e . W i t h t h i s a s s u m p t i o n , o b j e c t s i t h b a c k g r o u n d a r o n l y v i s i b l e i t h e y a r t a l l e r t h a n t h f o r e g r o u n d .

T i m p l e m e n t t h i s t h e o r y , b u f f e r o 3 2 b y t e s i r e s e r v e d , e a c hb y t e c o r r e s p o n d i n g t o n c o l u m n o p i x e l s o t h s c r e e n . T h a l g o r i t h m u s e s t h b u f f e r t k e e p t r a c k o t h h i g h e s t p o i n t p l o t t e ds f a r . W h e n t h p l o t i s f i r s t s t a r t e d , t h e b u f f e r i c l e a r e d t a l z e r o s .T h p l o t t i n g i t h e n d o n e f r o m f o r e g r o u n d t b a c k g r o u n d . E a c h t i m e

p o i n t i p l o t t e d , i t h e i g h t i c o m p a r e d t t h e a p p r o p r i a t e b y t e i t h b u f f e r ; i t h p o i n t i h i g h e r t h a n t h v a l u e f o u n d , t h e n t h e p o i n ti p l o t t e d a n t h e b u f f e r i u p d a t e d b s u b s t i t u t i n g t h n e h e i g h t . I t h e c u r r e n t p o i n t i l o w e r t h a n t h v a l u e i t h b u f f e r , t h p o i n t i a s s u m e d t b o b s c u r e d a n i n o p l o t t e d . T h t h e o r y w o r k s w e l l ,a n d o e s n o s l o w d o w n t h p l o t t i n g p e r c e p t i b l y . I n f a c t , i t h e r ew e r e l o o h i d d e n p o i n t s , i c o u l d p o s s i b l y s p e e d t h e p r o c e s sl i t t l e .

T w e n t r y p o i n t s t t h r o u t i n e s a r e r e q u i r e d i o r d e r t h a n d l e t h i s :

S Y S 4 9 1 5 5 , x , y [ T O x , y .S Y S 4 9 1 9 1 , x , y [ . .

P r i n t e r

. d r a w c o n v e n t i o n a l l i n ed r a w l i n e t h a t m a b h i d d e n

T h h i g h - r e s p l o t t i n g p r o c e d u r e c r e a t e s s o m e p r o b l e m s w i t hp r i n t e r d u m p s . T h s c r e e n u s e d i t u c k e d a w a y u n d e r t h e o p e r a t i n gs y s t e m R O a E 0 0 0 . T h i s i i d e a l f o v i d e o , a s i i f r e e R A t h a t i e a s i l y a c c e s s e d b t h v i d e o c h i p . H o w e v e r , i o r d e r t r e a d i t t h

C P h a t b a n k o u t h e o p e r a t i n g s y s t e m , w h i c h m a k e s t h p r i n t e ri n a c c e s s i b l e . P a r t o T h P r o j e c t o r i n c l u d e d s h o r t p i e c e o c o d e t r e l o c a t e t h s c r e e n t $ 2 0 0 0 , w h e r e a n p r i n t e r d u m p c a e a s i l yf i n d i t T h i s r e q u i r e s l e a v i n g T h P r o j e c t o r a f t e r e a c h p l o t , l o a d i n ga n r u n n i n g t h r e l o c a t e r o u t i n e , t h e n l o a d i n g a n r u n n i n g t h p r i n t e r d u m p . E f f e c t i v e , b u t n o t t h m o s t c o n v e n i e n t p r o c e d u r e .

T h n e v e r s i o n i s a l l r o l l e d i n t o o n p r o g r a m . I r e l o c a t e s t h p l o tt A 0 0 0 , u n d e r B A S I C , i m m e d i a t e l y b e f o r e p r i n t i n g . N o t h C P c a b a n k o u B A S I C , k e e p t h o p e r a t i n g s y s t e m , a n s e n d t h p l o t t t h p r i n t e r . T h c a l l t p r i n t i s

S Y S 4 9 1 9 4 , s , d

O t h e r F e a t u r e s

w h e r e ( s i z e ) s m a l l p r i n t o u td o u b l e - s i z e p r i n t o u t

( d e n s i t y ) l i g h t b a c k g r o u n dd a r k b a c k g r o u n d

A d d i n g t h e s e c a p a b i l i t i e s e x t e n d e d t h m a c h i n e c o d e b e y o n d 4 K , s os t a s h e d i i t h h i g h e n o B A S I C s t o r a g e a 9 8 0 0 . I m u s t b

p r o t e c t e d b P O K E 5 6 , 1 5 2 : C L R . ( T h e B A S I C l o a d e r d o e s t h i sa u t o m a t i c a l l y ) .

T h e x t r a s p a c e t h i s c r e a t e d w a u s e d t a d t w m o r e f e a t u r e s t h a ty o m a w i s h t t a k e a d v a n t a g e o f t h o u g h t h e y a r e n ' t u s e d b T h P r o j e c t o r . T h e s e a r s p l i t - s c r e e n c a p a b i l i t y f o i n t e r a c t i v e p l o t t i n g ,a n t h a b i l i t y t l o a d K o a l a P a p i c t u r e s f o f u r t h e r e d i t i n g . H e r ea r t h c o m m a n d s :

S Y 4 9 2 0 0 , n s p l i t s c r e e n , t e x t l i n e s .n = a l g r a p h i c s .

- 1 5 n u m b e r o f t e x t l i n e s a b o t t o m .2 5 a l t e x t .

S Y 4 9 1 9 7 p u K o a l a p i a $ E 0 0 0 , a f t e r l o a d i n g .

L o a d e i t h e r a K o a l a P a p i c t u r e o r p l o t b T h P r o j e c t o r ; t h e n ^ Y S4 9 2 0 0 , 5 i i m m e d i a t e m o d e w i l l g i v e y o s p l i t s c r e e n w i t h e n o u g ht e x t l i n e s t s e w h a t y o u ' r e d o i n g . Y o c a t h e n p r o c e e d t a d t e x tl a b e l s o a n o t h e r e d i t i n g y o w i s h , t h e n p r i n t t h r e s u l t .

T h 1 2

T h n e w C o m m o d o r e 1 2 8 h a s a n u m b e r o b u i l t - i n f e a t u r e s t h a th e l p i c o n v e r t i n g t h p r o g r a m , n o t a b l y l i n e p l o t t i n g a n o t h e rh i g h - r e s c o m m a n d s . A s r e s u l t , T h P r o j e c t o r i w r i t t e n e n t i r e l y i B A S I C . W h i l e t h i s i a m a r v e l l o u s i m p r o v e m e n t , i i t h u s u a l ' g o o dn e w s , b a n e w s ' s i t u a t i o n ; t h m a j o r b e n e f i t i t h a t s p e c i a l

T h T r a n s a c t o r 1 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 21: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 21/84

m a c h i n e - c o d e r o u t i n e s a r e n o t r e q u i r e d . O n d i s a d v a n t a g e i t h a tt h R O M s c a n n o t b m o d i f i e d a s t h e 6 r o u t i n e s w e r e , s o d e a l i n gw i t h h i d d e n l i n e s r e q u i r e s s o m e g y r a t i o n s i B A S I C .

T h e m e t h o d u s e d t d e l e t e h i d d e n l i n e s i c o m p l e t e l y d i f f e r e n t f r o mt h a t u s e d f o t h 6 4 T h i s t i m e , p l o t t i n g p r o c e e d s f r o m b a c k g r o u n dt f o r e g r o u n d ; t h P A I N T c o m m a n d i u s e d t m a s k o u h i d d e nd e t a i l b p a i n t i n g t h a r e a u n d e r n e a t h e a c h l i n e i b a c k g r o u n dc o l o u r . T h a t ' s l i t t l e t r i c k i e r t h a n i s o u n d s , a n r e q u i r e s m a k i n gf i v e p a s s e s a e a c h l i n e . A r e s u l t , t h p l o t t i n g i c o n s i d e r a b l ys l o w e r t h a n w i t h m a c h i n e l a n g u a g e t h s a m e o l s l o w B A S I Cp r o b l e m .

T h e r e i o n c o m p e n s a t i n g f a c t o r w i t h t h 1 2 t h c a l c u l a t i o n s a r d o n e i F A S T m o d e a M H z , c u t t i n g t h p r e p a r a t o r y t i m e i h a l f .D o n ' t p a n i c w h e n t h s c r e e n g o e s b l a n k ; t h e V I c h i p c a n ' t k e e p u a t h a t s p e e d , s o o u t p u t i a u t o m a t i c a l l y s w i t c h e d t t h 8 0 - c o l u m ns c r e e n t e m p o r a r i l y . T h p i c t u r e w i l l s o o n b e b a c k .

T h 1 2 8 ' s c o o r d i n a t e s y s t e m i u p s i d e - d o w n f r o m G a r y K i z i a k ' s ,w i t h m e a s u r e d f r o m t h e t o p o t h e s c r e e n . T o m a t c h t h i s , a l h e i g h t s a r i n v e r t e d .

O t h e r P r o g r a m I m p r o v e m e n t s

S e v e n n e f o r m u l a e h a v e b e e n d e v e l o p e d a n a r i n c l u d e d i t h p r o g r a m s ; s o m e a r r e p r o d u c e d h e r e . T m a k e t h e s e e a s i e r t a c c e s s , e a c h p l o t i s e l e c t e d f r o m m e n u , u s i n g t h D E F F Nc o m m a n d . T h e v e r t i c a l l i n e s i n e a c h g r i d m a b p l o t t e d o r a a o p t i o n , l e f t o u t .

T h e r e i a l s o t h c a p a b i l i t y o p l o t t i n g e m p i r i c a l d a t a . T i l l u s t r a t et h i s , I ' v e s u p p l i e d s o m e d a t a o o u f a m o u s w e s t c o a s t r a i n f a l l .S h o u l d y o w i s h t e n t e r y o u r o w i n f o r m a t i o n o b u d g e t s , g r o u n dc o n t o u r s , o r w h a t e v e r , h e r e i t h d a t a f o r m a t t u s e . I t h f i r s t l i n e :

7 0 0 0 D A T A T I T L E , M , N , S P

+ i t h n u m b e r o d a t a p o i n t s i e a c h r o w . + i t h n u m b e ro r o w s t p l o t . S i c o n s t a n t a f f e c t i n g t h e p r o p o r t i o n , t y p i c a l l y1 0 t 1 6 0 .

7 0 1 0 D A T A a , b , c , . . .7 0 2 0 D A T A d , e , f , . . .7 0 3 0 D A T A g , h , i , . . . ©

T h e r e m u s t b ( M 1 ) * ( N + 1 ) d a t a p o i n t s , w h e r e a , b , c i t h f i r s tr o w , e t c .

W h e n p l o t t e d i t h i s w a y , p a t t e r n s i t h d a t a b e c o m e e a s y t o s p o t .N o t e h o V a n c o u v e r ' s r a i n f a l l i n c r e a s e s i t h l a t e f a l l . ( S o m e t i m e si s e e m s l i k e i n e v e r q u i t s ! ) .

h o p e y o f i n d t h a t T h P r o j e c t o r P a r t I e x p a n d s t h e u s e f u l n e s s o y o u r c o m p u t e r , w h e t h e r i t ' s a 6 o 1 2 8 . I y o c o m e u w i t h af o r m u l a o s e o d a t a t h a t p r o d u c e s p a r t i c u l a r l y i n t e r e s t i n g p l o t , I ' db v e r y c u r i o u s t s e i t P e r h a p s w 1 b a b l e t p u b l i s h s e l e c t i o no t h e b e s t p l o t s . J u s t s e n d c o p y t t h a d d r e s s b e l o w .

I a A d a m P E n g .4 4 2 5 W e s t 1 2 t h A v e n u eV a n c o u v e r B V 6 R 2 R 3 C a n a d a

L i s t i n g 1 B A S I C p o r t i o n o t h n e C 6 p r o j e c t o r p r o g r a m . F o t h i s p r o g r a m t w o r k , t h f i l e s " h i p r n t l . m l 1 a n " h i p r n t 2 . m r m u s t b ep r e s e n t o d i s k w h e n t h p r o g r a m i r u n . T h e s e f i l e s c a b f o u n do t h T r a n s a c t o r d i s k f o t h i s i s s u e , o c r e a t e d b t h B A S I Cp r o g r a m s i L i s t i n g a n L i s t i n g 4

N A O M C O

I C I

A A J J K

D K

D G A K B K M O H F

G K G P I M

O A H

M E

M K I E P

O D K G

G G E M M M N B L B

1 0 0 0 p r i n t c h r $ ( 1 4 7 ) B 6 p r o j e c t o r1 0 1 0 p r i n t " p e r s p e c t i v e p l o t t e r1 0 2 0 p r i n t " w i t h h i d d e n l i n e s1 0 3 0 p r i n t " b i a a d a m1 0 4 0 p r i n t " V a n c o u v e r b 1 0 5 0 p r i n t " d e c e m b e r 1 9 8 51 0 6 0 :1 0 7 0 r e m r e q u i r e s h i r e s p l o t t i n g r o u t i n e s1 0 8 0 r e m t h t r a n s a c t o r v o i s s u e1 0 9 0 r e m w i t h e x t e n s i o n s b i 1 1 0 0 :1 1 1 0 i p e e k ( 3 8 9 1 2 ) t h e n1 1 2 0 p o k e 5 3 2 8 1 , 2 - a1 1 3 0 o g o t o 1 1 5 0 , 1 1 9 01 1 4 0 a = 1 : l o a d " h i p r n t 1 . m l " , 8 , 11 1 5 0 p o k e 5 6 , 1 5 2 c l 1 1 6 0 l o a d " h i p r n t 2 . m l " , 8 > 11 1 7 0 :1 1 8 0 r e m s t a r t h e r e !1 1 9 0 g o s u b i 9 9 0 , c o n s t a n t s1 2 0 0 g o s u b 2 6 5 0 , c h o o s e1 2 1 0 g o s u b 2 0 9 0 , c o n f i g ' n1 2 2 0 g o s u b 2 1 7 0 , v i e w i n g a n g l e1 2 3 0 g o s u b 2 3 9 0 , g e d a t a V 1 2 4 0 g o s u b i 3 9 0 , s c a l e ' I1 2 5 0 g o s u b i 5 8 0 , p l o t1 2 6 0 g o s u b 2 5 5 0 , m e s s a g e1 2 7 0 :1 2 8 0 p o k e i 9 8 , 0 : w a i t i 9 8 , 1 : g e t b $1 2 9 0 i b " r t h e n g o s u b 2 1 7 0 : g o t o 1 2 4 01 3 0 0 i b " p t h e n s y h i , 0 : s y d u , 0 , 0 : s y t

g o t o i 2 6 0 : d u m p t p r i n t e r1 3 1 0 i f b $ B a " t h e n 1 2 5 01 3 2 0 i b " n t h e n i d t h e n r u 1 3 3 0 i b " n t h e n g o s u b 2 6 5 0 : g o t o 1 2 2 01 3 4 0 i b t h e n 1 - 1 3 5 0 i b " h t h e n 1 - 1 3 6 0 i b $ O " q " t h e n 1 2 6 01 3 7 0 e n d1 3 8 0 :1 3 9 0 r e m v e r t i c a l s c a l i n g1 4 0 0 p r i n t : p r i n t ' s c a l i n g d a t a . . .1 4 1 0 v s c a l a r 9 e 1 4 2 0 f o r y = 0 t o n ■ ; . - .1 4 3 0 a = z ( 0 , y ) : f o r t 1 4 4 0 i f z ( x , y ) > a t h e n a = z ( x , y ) . . 1 4 5 0 n e x t r e m f i n d h i g h e s t p o i n t o l i n e1 4 6 0 i t h e n t m ( 1 9 9 - y v ( y ) ) / a : i v s > t m t h e n v s = t m1 4 7 0 n e x t : r e s e l e c t b e s t f e a s i b l e s c a l e1 4 8 0 :1 4 9 0 r e m c a l c u l a t e r i s e1 5 0 0 p r i n t " . . . s t i l l s c a l i n g !1 5 1 0 f o t o 1 5 2 0 t m y v ( y )1 5 3 0 f o t o r n1 5 4 0 r ( x , y ) z ( x , y ) * v s t

T h T r a n s a c t o r 1 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 22: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 22/84

D 1 5 5 0 n e x t x , yE 1 5 6 0 r e t u r nG 1 5 7 0 :J 1 5 8 0 r e s e u s c r e e nF 1 5 9 0 s y s h i , 0 f 0 f 1 3K 1 6 0 0 s y s d m , 1O 1 6 1 0 :D 1 6 2 0 r e p l o t h o r i z o n t a l l i n e sP 1 6 3 0 s y s m o , 1 0 , r ( 0 , 0 )B 1 6 4 0 d d r : i f t h e n d h J 1 6 5 0 f o t o B 1 6 6 0 t m y h ( y )

I 1 6 7 0 f o t o r nF 1 6 8 0 s y s d i , t x h ( x ) , r ( x , y )G 1 6 9 0 n e x t xM 1 7 0 0 i t h e n 1 8 0 0C 1 7 1 0 :G 1 7 2 0 r e p l o t v e r t i c a l l i n e sK 1 7 3 0 s y s d r , y h ( y 1 x h ( m ) , r ( m , y 1 P 1 7 4 0 s y s d i , y h ( y ) x h ( m ) , r ( m , y )F L 1 7 5 0 f o = m - 1 t s t e p - 1

A 1 7 6 0 i f v t h e n xC 1 7 7 0 s y s m o . t m + x h ( x ) f r ( x , y )

J 1 7 8 0 s y s d i , y h ( y + 1 x h ( x ) , r ( x , y + 1 D 1 7 9 0 n e x t x , M 1 8 0 0 :

N 1 8 1 0 r e m d r a w b o N 1 8 2 0 s y s m o , 1 0 , r ( 0 , 0 )F 1 8 3 0 s y s d r . 1 0 , 1 0L 1 8 4 0 s y s d r , x h ( m ) , 1 0I 1 8 5 0 s y s d r , x h ( m ) , r ( m , 0 )

O 1 8 6 0 s y s m o , x h ( m ) , 1 0J 1 8 7 0 s y s d r , x h ( m ) y h ( n ) , y v ( n )C 1 8 8 0 s y s d r . x h ( m ) y h ^ . ^ m . n )G 1 8 9 0 :F 1 9 0 0 r e m t i t l eK 1 9 1 0 s y s c o , 8 : s y s p r , 1 , 2 4 , a $E 1 9 2 0 :C 1 9 3 0 r e m w a i t f o h u m a nA 1 9 4 0 w a i t 1 9 8 , 3 : p o k e 1 9 8 , 0N 1 9 5 0 s y s t e : p r i n t c h r $ ( 1 4 7 )E 1 9 6 0 r e t u r nG 1 9 7 0 :C 1 9 8 0 r e m c o n s t a n t sN 1 9 9 0 h 4 9 1 5 2 : d r 4 9 1 5 5 : m o 4 9 1 6 1P 2 0 0 0 d 4 9 1 6 7 : c o 4 9 1 7 3 : t e 4 9 1 7 9J 2 0 1 0 p r 4 9 1 8 2 : h d 4 9 1 9 1 : d u 4 9 1 9 4K 2 0 2 0 2 0 r e x - d i m e n s i o n

M 2 0 3 0 1 6 : r e m y - d i m e n s i o nN 2 0 4 0 s 9 6 : r e m v e r t i c a l s e p a r a t i o nH 2 0 5 0 t h - D 2 0 6 0 m s $ ( 0 ) " h i d e " : m s $ ( 1 ) " s h o wC 2 0 7 0 r e t u r nE 2 0 8 0 :

G 2 0 9 0 i n p u f h i d d e n l i n e s t o b s h o w n ( y / n ) " ; b $K 2 1 0 0 h = a b s ( b $ " n " )B 2 1 1 0 i n p u t V e r t i c a l l i n e s t o b s h o w n ( y / n ) " ; b $

K 2 1 2 0 v a b s ( b $ Y T O 2 1 3 0 d i m z ( m , n ) , r ( m , n )J 2 1 4 0 d i m x h ( m ) , y h ( n ) , y v ( n )C 2 1 5 0 r e t u r n

E 2 1 6 0 :

S T E T S O N , W I T H M = 4 0 .B = 1 O I L I N E 5 4 0 0

I M M E R S E H f t U E ST h T r a n s a c t o r 2 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e 0

Page 23: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 23/84

K 2 1 7 0 r e v i e w a n g l eJ 2 1 8 0 i t h e t a < 0 t h e n t h e t a 6 0 : r e m d e f a u l t a n g l eN 2 1 9 0 p r i n t : p r i n t ' e n t e r v i e w i n g a n g l e , o p r e s s r e t u r nC 2 2 0 0 p r i n t f o r t h ' d e g r e e s :K 2 2 1 0 i n p u t t h : i t h < 0 o t h > 9 0 t h e n 2 1 8 0L 2 2 2 0 a n = t h * < c l r > / 1 8 0D 2 2 3 0 t m 1 2 0 * c o s ( a n )G 2 2 4 0 x g r i d i n t ( ( 3 0 9 - t m ) / m )N 2 2 5 0 y g r i d i n t ( s p * s i n ( a n ) / n )

I 2 2 6 0 y s t p i n t ( t m / n )C 2 2 7 0 :B 2 2 8 0 r e c a l c u l a t e o f f s e t sD 2 2 9 0 f o r x 0 t o r nG 2 3 0 0 x h r i z ( x ) 1 x * x gK 2 3 1 0 n e x tH 2 3 2 0 f o t o M 2 3 3 0 y h r i z ( y ) y * y sN 2 3 4 0 y v e r t ( y ) 1 y * y gC 2 3 5 0 n e x tE 2 3 6 0 r e t u r nG 2 3 7 0 :N 2 3 8 0 r e d a t a t p l o tJ 2 3 9 0 p r i n t : p r i n t ' c r e a t i n g d a t a . . .J 2 4 0 0 i d t h e n 2 4 8 0L 2 4 1 0 f o t o r nL 2 4 2 0 f o t o

O 2 4 3 0 i t h e n f n r ( x ) : s = f n s ( y )P 2 4 4 0 z ( x , y ) = f n z ( x )D 2 4 5 0 n e x t y : p r i n t x ; : n e x t x : r e t u r n

A 2 4 6 0 :E 2 4 7 0 r e r e a d e m p i r i c a l r e s u l t s f r o m d a t aH 2 4 8 0 f o r y = 0 t o nL 2 4 9 0 f o t o r nP 2 5 0 0 r e a d z ( x , y )K 2 5 1 0 n e x t x : p r i n t y ; : n e x t yE 2 5 2 0 r e t u r nG 2 5 3 0K 2 5 4 0 r e m * * m e n u s : * * B 2 5 5 0 p r i n t c h r $ ( 1 9 ) c h r $ ( 1 8 ) ; " p r e s s : " : p r i n tG 2 5 6 0 p r i n t e r r e v i e w f r o m a n o t h e r a n g l eL 2 5 7 0 p r i n f p s e n d p r o j e c t i o n t o p r i n t e rF 2 5 8 0 p r i n t ' h : " m s $ ( 1 - h ) n h i d d e n l i n e sK 2 5 9 0 p r i n f v : " m s $ ( 1 - v ) n v e r t i c a l l i n e sN 2 6 0 0 p r i n f a p l o t a g a i nH 2 6 1 0 p r i n f n f o n e s h a p eO 2 6 2 0 p r i n f q q u i tC 2 6 3 0 r e t u r nE 2 6 4 0 : .O 2 6 5 0 p r i n t r p r i n t c h r $ ( 1 8 ) ; " p r e s s : ' : p r i n tD 2 6 6 0 p r i n t i . s t e t s o n

I 2 6 7 0 p r i n t " 2 . i n v e r s e w a v e sO 2 6 8 0 p r i n t B 3 . f u r r o w sC 2 6 9 0 p r i n t s , c a s c a d eJ . 2 7 0 0 p r i n t " 5 . t w i n p e a k s

I 2 7 1 0 p r i n t " 6 . c r a t e rI 2 7 2 0 p r i n t 1 ? , r a d i a l

H 2 7 3 0 p r i n t U r e a d d a t aI 2 7 4 0 :

D 2 7 5 0 w a i t 1 9 8 , 1 : g e t a $D 2 7 6 0 0 : v a l ( a $ ) : i f a < o a > t h e n r u L 2 7 7 0 o n g o s u b 2 8 9 0 , 2 9 4 0 , 2 9 8 0 , 3 0 2 0 , 3 0 7 0 ,

3 1 3 0 , 3 1 8 0 , 2 8 0 0 C R A T E RT h T r a n s a c t o r 2 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 24: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 24/84

H K E I C

B P F B B E E H J F

G 1 F O O G M E G B 0 L

M I

F M C K N E F P

O C G J

H M O

I E E G D K B K C M H H C

R A D I A L

2 7 8 0 p r i n t a $ : r e t u r n2 7 9 0 :2 8 0 0 p r i n t r p r i n t c h r $ ( 1 8 ) ; " p r e s s : " : p r i n t2 8 1 0 p r i n t " 1 . r a i n f a l l2 8 2 0 p r i n t " 2 . m o r e d a t a2 8 3 0 p r i n t : p r i n t " O . f i r s t m e n u2 8 4 0 w a i t i 9 8 , 1 : g e t a : i f o a > t h e n r u 2 8 5 0 o n g o s u b 3 2 3 0 , 3 4 7 02 8 6 0 r e a d a $ , m , n , s p2 8 7 0 d d 1 : r e t u r n2 8 8 0 :2 8 9 0 a m / 2 : b 5 : n / 2 : d 2 : . 2 9 0 0 d e f f n r ( x ) ( x - a ) / b : d e f f n s ( y ) ( y - c ) / b2 9 1 0 d e f f n z ( x ) s i n ( r * r * d s * s ) * e x p ( - r * r - s * s )2 9 2 0 a " s t e t s o n " : r e t u r n2 9 3 0 :2 9 4 02 9 5 0 d e f f n z ( x ) s i n ( x * y / m )2 9 6 0 a " i n v e r s e w a v e s ° : r e t u r n2 9 7 02 9 8 0 a m / 2 : b n / 2 : c 4 : 2 9 9 0 d e f f n z ( x ) s i n ( ( x - a ) * ( y - b ) / b ) y / 3 0 0 0 a $ " f u r r o w s " : r e t u r n3 0 1 0 :3 0 2 0 a = 6 : 2 : . 1 : e - 1 . 23 0 3 0 d e f f n r ( x ) = y / n - x / m : d e f f n s ( y )3 0 4 0 d e f f n z ( x ) ( e x p ( s r ) ) * c o s ( a * r * r - a * s e 3 0 5 0 a " c a s c a d e " : r e t u r n3 0 6 0 :3 0 7 0 a i n t ( m / 3 ) : b m - a : c n / 2 : d 3 : . 1 : f . 3 0 8 0 d e f f n r ( x ) ( x - a ) * ( x - a ) ( y - c ) * ( y - c )3 0 9 0 d e f f n s ( y ) ( x - b ) * ( x - b ) ( y - c ) * ( y - c )3 1 0 0 d e f f n z ( x ) c o s ( s q r ( r ) ) * ( e x p ( - r / d ) e

c o s ( s q r ( s ) ) * ( e x p ( - s / d ) e 3 1 1 0 a " t w i n p e a k s " : r e t u r n3 1 2 0 :3 1 3 0 a = m / 2 : b n / 2 : c = 4 5 : e3 1 4 0 d e f f n r ( x ) a b s ( ( x - a ) * ( x - a ) ( y - b ) * ( y - b ) - c )

: d e f f n s ( y ) = 3 1 5 0 d e f f n z ( x ) e / 3 1 6 0 a " c r a t e r " : r e t u r n3 1 7 0 C A S C A D E3 1 8 0 a m / 2 : b n / 2 : c . 0 0 1 : d 4 3 1 9 0 d e f f n z ( x ) ( a b s ( x - a ) a b s ( y - b ) ) * s i n ( 4

* a t n ( ( y - b ) / ( x - a c ) ) )3 2 0 0 a " r a d i a l " : r e t u r n3 2 1 0 :3 2 2 03 2 3 0 p o k e 6 5 , p e e k ( 6 1 ) : p o k e 6 6 , p e e k ( 6 2 ) : r e s e

d a t a p t 3 2 4 0 r e t u r n3 2 5 03 2 6 0 d a t a r a i n f a l l i n m V a n c o u v e r 1 9 7 5 - 1 9 8 5 ,

1 1 , 1 0 , 1 6 03 2 7 0 :3 2 8 0 d a t a 3 0 9 4 8 3 9 0 4 4 3 1 7 2 3 2 9 0 d a t a 9 5 , 2 6 6 , 0 , 0 : r e m 1 9 8 53 3 0 0 d a t a 2 6 8 , 1 7 6 , 1 3 2 , 1 4 0 , 1 0 9 , 8 0 1 1 3 3 1 0 d a t a 6 0 , 1 6 7 , 2 2 5 , 1 7 0 , 1 8 6 , 2 3 9 , 1 2 2 , 9 83 3 2 0 d a t a 4 0 8 4 , 1 0 2 , 3 0 , 9 9 , 9 7 , 3 2 5 , 7 3 3 3 0 d a t a 2 4 7 , 2 2 9 , 6 8 , 1 1 6 , 1 8 2 8 , 7 4 , 4 3 3 4 0 d a t a 4 6 , 1 3 1 , 1 7 3 , 1 3 1 , 5 7 , 1 0 6 , 1 2 4 , 1 7 3

R A I N F A L L M M U A N C O U U E R 1 9 7 5 - 1 9 8 5

T h T r a n s a c t o r 2 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 25: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 25/84

G M O A P D J J

P K F I

E E

G K

3 3 5 0 d a t a 1 3 0 , 1 3 8 , 1 7 5 9 , 8 9 , 1 2 5 , 2 7 4 , 1 5 73 3 6 0 d a t a 9 6 , 1 6 5 , 1 2 0 , 7 1 5 4 , 1 0 0 , 7 4 3 3 3 7 0 d a t a 1 0 4 , 4 0 , 3 1 9 , 2 1 8 : r e m 1 9 8 03 3 8 0 d a t a 5 7 , 1 6 2 , 6 1 , 5 7 , 4 9 , 3 3 , 3 2 , 1 3 3 9 0 d a t a 7 4 , 7 6 , 6 5 , 2 9 4 , 1 1 3 , 9 5 7 7 8 3 4 0 0 d a t a 6 5 , 2 3 , 9 , 1 0 4 , 9 6 4 2 , 1 2 4 , 8 3 4 1 0 d a t a 1 0 2 , 8 7 , 8 4 , 5 2 , 9 8 , 1 8 , 5 1 5 3 4 2 0 d a t a 8 2 , 9 8 , 2 0 , 1 4 0 , 1 6 7 , 1 5 9 , 1 1 2 , 8 3 4 3 0 d a t a 9 5 , 6 7 , 2 4 , 8 4 , 5 3 8 1 6 4 , 1 3 53 4 4 0 d a t a 1 6 2 , 1 2 6 , 1 1 8 , 3 0 , 4 9 , 3 1 , 1 9 , 1 0 63 4 5 0 d a t a 1 3 0 0 , 2 1 0 , 2 6 8 : r e m 1 9 7 53 4 6 0 :3 4 7 0 p o k e 6 5 , p e e k ( 6 1 ) : p o k e 6 6 , p e e k ( 6 2 ) : r e s e

d a t a p t 3 4 8 0 r e t u r n3 4 9 0 :3 5 0 0 d a t a n o n e e n t e r e d , 1 , 1 , 1 0 0

L i s t i n g 2 T h v e r s i o n o t h n e p r o j e c t o r f o t r i e C 1 2 8 . N a d d i t i o n a l f i l e s a r r e q u i r e d t r u t h i s p r o g r a m . M a k e s u r e y o s w i t c h y o u r m o n i t o r t t h 4 c o l u m n ( C 6 4 ) s i d e t s e t h p l o t s .

N E E O

I G

I N D

I J O A O B E I

L M M

I P E M M G E M M B

I IC O G C M B O O

1 0 0 0 p r i n t c h r $ ( 1 4 7 ) 1 2 8 p r o j e c t o r "1 0 1 0 p r i n t " p e r s p e c t i v e p l o t t e r "1 0 2 0 p r i n t " w i t h h i d d e n l i n e s "1 0 3 0 p r i n t " b i a a d a m "1 0 4 0 p r i n t ' V a n c o u v e r b e 1 0 5 0 p r i n t " d e c e m b e r 1 9 8 5 "1 0 6 0 :i 0 7 0 t r a p 2 1 7 01 0 8 0 g o s u b 2 0 1 0 , c o n s t a n t s1 0 9 0 g o s u b 2 7 6 0 , c h o o s e1 1 0 0 g o s u b 2 0 9 0 , c o n f i g1 1 1 0 g o s u b 2 2 3 0 , v i e w i n g a n g l e1 1 2 0 g o s u b 2 5 1 0 , g e d a t a1 1 3 0 g o s u b 1 2 7 0 , s c a l e1 1 4 0 g o s u b 1 4 6 0 , p l o t1 1 5 0 d 1 1 6 0 g o s u b 2 6 7 0 , m e s s a g e1 1 7 0 g e t k e y b $1 1 8 0 i b t h e n g o s u b 2 2 3 0 : g o t o 1 1 3 01 1 9 0 i b ° p t h e n 1 1 4 01 2 0 0 i b ° n t h e n i d t h e n r u 1 2 1 0 i b " n t h e n g o s u b 2 7 6 0 : g o t o 1 1 1 01 2 2 0 i b t h e n v 1 - 1 2 3 0 i b " h t h e n 1 - r h1 2 4 0 i f b $ " q " t h e n e n d1 2 5 0 :1 2 6 0 l o o p1 2 7 0 r e m v e r t i c a l s c a l i n g1 2 8 0 v s c a l a r 9 e 1 2 9 0 f o t o 1 3 0 0 :1 3 1 0 a z ( 0 , y ) : f b r x t o r n1 3 2 0 i z ( x , y ) > a t h e n z ( x , y )1 3 3 0 n e x t1 3 4 0 i t h e n i v s > y v ( y ) / a t h e n v y v ( y ) / a1 3 5 0 n e x t r e m s e l e c t b e s t f e a s i b l e s c a l ei 3 6 0 c o l o r 4 , 71 3 7 0 :1 3 8 0 r e c a l c u l a t e r i s e

T h T r a n s a c t o r 2

F J D P L M O B K G G L

I M M

I M H C G O M L G

G N G H E K N H

I L J A J E

D A C A L J C E K G E K

L B I

C A A M L E F

C E

1 3 9 0 f o t o 1 4 0 0 t m y v ( y )1 4 1 0 f o r x 0 t o m1 4 2 0 r ( x , y ) t m - z ( x , y ) * v s1 4 3 0 n e x t x , 1 4 4 0 r e t u r n1 4 5 0 :1 4 6 0 r e m s e u s c r e e n1 4 7 0 c o l o r 1 , 1 4 : g r a p h i c 1 , 1 4 8 0 s l o w1 4 9 0 :1 5 0 0 r e p l o t h o r i z o n t a l l i n e s1 5 1 0 l o c a t e g ( 0 , n ) , f ( 0 , n )1 5 2 0 f o r y n t o 0 s t e p - 11 5 3 0 i t h e n 1 6 2 01 5 4 0 :1 5 5 0 r e m p l o t v e r t i c a l l i n e s1 5 6 0 f o m - t s t e p - 11 5 7 0 i t h e n1 5 8 0 l o c a t e g ( x , y 1 ) , r ( x , y 1 1 5 9 0 d r a w t g ( x , y ) , r ( x , y )1 6 0 0 n e x t1 6 1 0 i t h e n g o s u b 1 8 5 0 , m a s k1 6 2 0 f o t o r n1 6 3 0 d r a w t g ( x , y ) , r ( x , y )1 6 4 0 n e x t x , 1 6 5 0 :1 6 6 0 r e d r a w b o x1 6 7 0 l o c a t e 1 0 r ( 0 , 0 )1 6 8 0 d r a w t 1 0 , h t1 6 9 0 d r a w t x m , h t1 7 0 0 d r a w t g ( m , n ) , y v ( n )1 7 1 0 d r a w t g ( m , n ) , r ( m , n )1 7 2 0 f o n - t s t e p - 11 7 3 0 d r a w t g ( m , y ) , r ( m , y )1 7 4 0 n e x t1 7 5 0 d r a w t x m , h t1 7 6 0 :1 7 7 0 r e m t i t l e1 7 8 0 c h a r 1 , 1 , 2 4 , a $1 7 9 0 : , 1 8 0 0 r e w a i t f o h u m a n1 8 1 0 g e t k e y b $1 8 2 0 g r a p h i c 0 , 1 8 3 0 r e t u r n1 8 4 0 :1 8 5 0 r e m a s k h i d d e n l i n e s1 8 6 0 f o r i - t 1 8 7 0 l o c a t e g ( 0 , y ) i , r ( O , y )1 8 8 0 f o t o r n1 8 9 0 d r a w t o g ( x , y ) i , r ( x , y )1 9 0 0 n e x t x , 1 9 1 0 l o c a t e g ( 0 , y ) , r ( O , y ) + 1 9 2 0 f o t o r n1 9 3 0 d r a w 0 0 t g ( x , y ) , r ( x , y ) + 1 9 4 0 n e x t1 9 5 0 d r a w 0 0 t 8 1 9 6 0 p a i n t 0 , g ( m , y ) , r ( m , y )1 9 7 0 p a i n t 0 , g ( 0 , y ) , r ( 0 , y )1 9 8 0 l o c a t e g ( O , y ) , r ( O , y )1 9 9 0 r e t u r n2 0 0 0 :

J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 26: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 26/84

A C D P

I P C E H H E H M L C

E J K C N E C A G A P F O O E

H I

G F 1

C B D

G K

M J L N H D A L

M O F N P D M N B

G l

D P D H

2 0 1 0 2 0 r e x - d i m e n s i o n2 0 2 0 1 6 r e y - d i m e n s i o n2 0 3 0 s 9 6 r e v e r t i c a l s e p a r a t i o n2 0 4 0 m s $ ( 0 ) " h i d e " : m s $ ( 1 ) " s h o w2 0 5 0 h t 1 9 0 : t - 2 0 6 0 p 3 . 1 4 1 5 9 2 6 52 0 7 0 r e t u r n2 0 8 0 :2 0 9 0 p r i n t " h i d d e n l i n e s t b s h o w n ( y / n ) n : g e t k e y b 2 1 0 0 h a b s ( b $ O B y B )2 1 1 0 p r i n t V e r t i c a l l i n e s t b s h o w n ( y / n ) " : g e t k e y b 2 1 2 0 v = a b s ( b $ O " y " )2 1 3 0 d i z ( m , n ) , r ( m , n ) , g ( m , n )2 1 4 0 d i x h ( m ) , y v ( n )2 1 5 0 r e t u r n2 1 6 0 :2 1 7 0 r e e r r o r t r a p2 1 8 0 s l o w2 1 9 0 p r i n t e r r $ ( e r ) e l2 2 0 0 g r a p h i c2 2 1 0 e n d2 2 2 0 :2 2 3 0 r e v i e w a n g l e2 2 4 0 p r i n t " * * s c r e e n w i l l b b l a n k e d w h i l e * * 2 2 5 0 i t h e t a < 0 t h e n t h e t a = 6 0 : r e d e f a u l t a n g l e2 2 6 0 p r i n t : p r i n t " e n t e r v i e w i n g a n g l e , o r p r e s s r e t u r n "2 2 7 0 p r i n t B f o r " t h " d e g r e e s : "2 2 8 0 i n p u t t 2 2 9 0 a n t h * p i / 1 8 0

, 2 3 0 0 f a s t2 3 1 0 t m 1 2 0 * a b s ( c o s ( a n ) )2 3 2 0 x g r i d i n t ( ( 3 0 9 - t m ) / m )2 3 3 0 y g r i d i n t ( s p * a b s ( s i n ( a n ) ) / n )2 3 4 0 y s t p i n t ( t m / n )2 3 5 0 :2 3 6 0 r e c a l c u l a t e o f f s e t s2 3 7 0 f o t o r n2 3 8 0 x h r i z ( x ) 1 x * x g2 3 9 0 n e x t2 4 0 0 x m x h ( m )2 4 1 0 c o l o r 4 , 2 4 2 0 f o 0 t o n2 4 3 0 y v e r t ( y ) h t - y * y g2 4 4 0 t m = y * y s2 4 5 0 f o t o r n2 4 6 0 g ( x , y ) x h ( x ) + t m2 4 7 0 n e x t x , 2 4 8 0 r e t u r n2 4 9 0 :2 5 0 0 r e m d a t a t o p l o t2 5 1 0 i d t h e n 2 6 0 02 5 2 0 f o t o 2 5 3 0 f o t o r n2 5 4 0 i t h e n r = f n r ( x ) : s = f n s ( y )2 5 5 0 z ( x , y ) = f n z ( x )2 5 6 0 n e x t x c o l o r 4 , ( y a n d 1 5 ) + 1 n e x t2 5 7 0 r e t u r n2 5 8 0 :2 5 9 0 r e m r e a d e m p i r i c a l r e s u l t s2 6 0 0 f o 0 t o n2 6 1 0 f o t o r n2 6 2 0 r e a d z ( x , y )

H M O C H E J K L H O A C H J N E

I M

H I

I D A

L A L H J M

N O

I J L D A N N A A D F B C E B K K C

I A C

N K H I E

B I

O T h T r a n s a c t o r 2

2 6 3 0 n e x t x c o l o r 4 , ( y a n d 1 5 ) + 1 n e x t2 6 4 0 r e t u r n2 6 5 0 :2 6 6 0 r e m * m e n u s * *2 6 7 0 p r i n t c h r $ ( 1 9 ) B p r e s s : "2 6 8 0 p r i n t " r e v i e w f r o m a n o t h e r a n g l e "2 6 9 0 p r i n t " h B m s $ ( 1 - h ) B h i d d e n l i n e s "2 7 0 0 p r i n t V : " m s $ ( 1 - v ) a v e r t i c a l l i n e s "2 7 1 0 p r i n t " p l o t a g a i n "2 7 2 0 p r i n t " f o n e s h a p e "2 7 3 0 p r i n t " q q u i t "2 7 4 0 r e t u r n2 7 5 0 :2 7 6 0 c o l o r 0 , 2 7 7 0 p r i n t " p r e s s : "2 7 8 0 p r i n t " 1 s t e t s o n "2 7 9 0 p r i n t " 2 i n v e r s e w a v e s "2 8 0 0 p r i n t " 3 f u r r o w s "2 8 1 0 p r i n t " 4 c a s c a d e "2 8 2 0 p r i n t " 5 t w i n p e a k s "2 8 3 0 p r i n t " 6 c r a t e r "2 8 4 0 p r i n t " 7 r a d i a l "2 8 5 0 p r i n t " 8 r e a d d a t a "2 8 6 0 :2 8 7 0 g e t k e y a 2 8 8 0 e = 0 : a = v a l ( a $ )2 8 9 0 i a < o a > t h e n r u 2 9 0 0 o g o s u b 3 0 3 0 , 3 0 8 0 , 3 1 2 0 , 3 1 6 0 , 3 2 1 0 ,

3 2 7 0 , 3 3 2 0 , 2 9 3 02 9 1 0 p r i n t a $ : . r e t u r n2 9 2 0 :2 9 3 0 p r i n t " p r e s s "2 9 4 0 p r i n t " 1 r a i n f a l l "2 9 5 0 p r i n t " 2 m o r e d a t a "2 9 6 0 p r i n t " 0 . f i r s t m e n u "2 9 7 0 g e t k e y a i o a > t h e n r u 2 9 8 0 i t h e n r e s t o r e 3 3 6 02 9 9 0 i t h e n r e s t o r e 3 5 6 03 0 0 0 r e a d a $ , m , n , s p3 0 1 0 d d 1 r e t u r n3 0 2 0 :3 0 3 0 a m / 2 : 5 n / 2 : 2 . 3 0 4 0 d e f f n r ( x ) ( x - a ) / b : d e f f n s ( y ) ( y - c ) / b3 0 5 0 d e f f n z ( x ) s i n ( r * r * d s * s ) * e x p ( - r * r - s * s )3 0 6 0 a " s t e t s o n " : r e t u r n3 0 7 0 :3 0 8 03 0 9 0 d e f f n z ( x ) s i n ( x * y / m )3 1 0 0 a " i n v e r s e w a v e s " : r e t u r n3 1 1 0 :3 1 2 0 a m / 2 : b n / 2 : c 4 : 3 1 3 0 d e f f n z ( x ) s i n ( ( x - a ) * ( y - b ) / b ) y / 3 1 4 0 a " f u r r o w s " : r e t u r n3 1 5 0 :3 1 6 0 a 6 : b = 2 : c . 1 : e - 1 . 23 1 7 0 d e f f n r ( x ) y / n - x / m : d e f f n s ( y )3 1 8 0 d e f f n z ( x ) ( e x p ( s r ) ) * c o s ( a * r * r - a * s e 3 1 9 0 a " c a s c a d e " : r e t u r n3 2 0 0 :3 2 1 0 a i n t ( m / 3 ) : b = m - a : c = n / 2 : d 3 : . 1 : f . 3 2 2 0 d e f f n r ( x ) ( x - a ) * ( x - a ) ( y - c ) * ( y - c )3 2 3 0 d e f f n s ( y ) ( x - b ) * ( x - b ) ( y - c ) * ( y - c )

J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e 0

Page 27: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 27/84

G

J A B L

K 0 C F D

1 K

H L E M G B B M A G I

K J N D D

J E P C M

3 2 4 0 d e f f n z ( x ) c o s ( s q r ( r ) ) * ( e x p ( - r / d ) e c o s ( s q r ( s ) ) * ( e x p ( - s / d ) e

3 2 5 0 a " t w i n p e a k s " : r e t u r n3 2 6 0 :3 2 7 0 m / 2 : n / 2 : 4 5 3 2 8 0 d e f f n r ( x ) a b s ( ( x - a ) * ( x - a ) ( y - b ) * ( y - b ) - c )

: d e f f n s ( y )3 2 9 0 d e f f n z ( x ) e / 3 3 0 0 a " c r a t e r " : r e t u r n3 3 1 0 :3 3 2 0 m / 2 : n / 2 : . 0 0 1 : 4 3 3 3 0 d e f f n z ( x ) ( a b s ( x - a ) a b s ( y - b ) ) * s i n ( 4

* a t n ( ( y - b ) / ( x - a + c ) ) )3 3 4 0 a " r a d i a l " : r e t u r n3 3 5 0 :3 3 6 0 d a t a r a i n f a l l i m V a n c o u v e r 1 9 7 5 - 1 9 8 5 ,

1 1 , 1 0 , 1 6 03 3 7 0 d a t a 3 0 , 9 4 , 8 3 , 9 0 , 4 4 , 3 1 , 7 3 3 8 0 d a t a 9 5 , 2 6 6 , 0 0 : r e m 1 9 8 53 3 9 0 d a t a 2 6 8 , 1 7 6 , 1 3 2 , 1 4 0 , 1 0 9 , 8 0 1 3 4 0 0 d a t a 6 0 , 1 6 7 , 2 2 5 , 1 7 0 , 1 8 6 , 2 3 9 , 1 2 2 ,3 4 1 0 d a t a 4 0 8 4 , 1 0 2 , 3 0 , 9 9 , 9 7 , 3 2 5 ,3 4 2 0 d a t a 2 4 7 , 2 2 9 , 6 8 , 1 1 6 ,3 4 3 0 d a t a 4 6 , 1 3 1 , 1 7 3 , 1 3 1 ,3 4 4 0 d a t a 1 3 0 , 1 3 8 , 1 7 5 9 3 4 5 0 d a t a 9 6 , 1 6 5 , 1 2 0 , 7 1 3 4 6 0 d a t a 1 0 4 , 4 0 , 3 1 9 , 2 1 8 : r e 1 9 8 03 4 7 0 d a t a 5 7 , 1 6 2 , 6 1 , 5 7 , 4 9 , 3 3 , 3 2 3 4 8 0 d a t a 7 4 , 7 6 , 6 5 , 2 9 4 , 1 1 3 , 9 5 7 7 3 4 9 0 d a t a 6 5 , 2 3 , 9 , 1 0 4 , 9 6 4 2 , 1 2 4 ,3 5 0 0 d a t a 1 0 2 , 8 7 , 8 4 , 5 2 , 9 8 , 1 8 5 1 3 5 1 0 d a t a 8 2 , 9 8 , 2 0 , 1 4 0 , 1 6 7 , 1 5 9 , 1 1 2 ,3 5 2 0 d a t a 9 5 , 6 7 , 2 4 , 8 4 , 5 3 , 8 1 , 6 4 , 1 3 53 5 3 0 d a t a 1 6 2 , 1 2 6 , 1 1 8 , 3 0 , 4 9 , 3 1 , 1 9 , 1 0 63 5 4 0 d a t a 1 3 0 0 , 2 1 0 , 2 6 8 : r e 1 9 7 53 5 5 0 :3 5 6 0 d a t a n o n e e n t e r e d , , , 1 0 0

2

1 9 7

1 8 2 8 , 7 4 , 4 5 7 , 1 0 6 , 1 2 4 , 1 7 38 9 , 1 2 5 , 2 7 4 , 1 5 75 4 , 1 0 0 , 7 4 3

1 8 8 5 8

L i s t i n g 3 R u t h i s p r o g r a m t c r e a t e t h e f i l e " h i p r n t i . m l " f o t h C 6 p r o j e c t o r i l i s t i n g 1

A H B

A F C M E N C E O K

I J D I

C G C

1 0 0 0 r e m * p r o g r a m t c r e a t e ' h i p r n t i . m l ' o d i s k1 0 1 0 f o t 2 6 4 0 : r e a d1 0 2 0 c c x n e x t1 0 3 0 i c h < > 3 2 5 0 3 3 t h e n p r i n t " c h e c k s u m e r r o r " : e n 1 0 4 0 p r i n t " d a t a o k n o c r e a t i n g f i l e " : p r i n t1 0 5 0 r e s t o r e1 0 6 0 o p e n 8 , 8 , 8 , " 0 : h i p m t 1 . m l , p , w "1 0 7 0 p r i n t # 8 , c h r $ ( 0 ) c h r $ ( 1 9 2 ) ;1 0 8 0 f o t 2 6 4 0 r e a d1 0 9 0 p r i n t # 8 , c h r $ ( x ) ; : n e x t1 1 0 0 c l o s e1 1 1 0 p r i n t " p r g f i l e ' h i p r n t i . m l ' c r e a t e d . . .1 1 2 0 p r i n t " t h i s g e n e r a t o r n l o n g e r n e e d e d .1 1 3 0 r e m1 1 4 0 d a t a1 1 5 0 d a t a1 1 6 0 d a t a1 1 7 0 d a t a1 1 . 8 0 d a t a1 1 9 0 d a t a

7 6 , 2 2 2 , 1 9 5 ,7 6 , 1 2 4 , 1 9 6 ,7 6 , 2 4 5 , 1 9 8 ,7 6 , 2 0 2 , 1 9 5 ,7 6 3 3 , 2 0 2 ,7 6 , 2 3 6 , 1 5 5 ,

7 6 3 2 , 1 9 8 ,7 6 4 4 , 1 9 6 ,7 6 2 8 , 1 9 9 ,7 6 2 2 3 , 1 9 9 ,7 6 2 7 , 1 9 8 ,7 6 , 1 4 8 , 1 9 5 ,

7 6 , 1 1 8 , 1 9 77 6 , 2 3 1 , 1 9 87 6 8 4 , 1 9 97 6 2 2 8 , 2 0 7 6 6 3 , 1 5 2

0 , 0 ,

B A N H O P G E N C O F D J C L L A

P B G L E P

O B K

I A A N P M G K M K O G K F P

J I

O F G K N

I C P M P J J D G L B

O G

1 2 0 0 d a t a 0 1 2 1 0 d a t a 0 1 2 2 0 d a t a 0 1 2 3 0 d a t a 0 1 2 4 0 d a t a 2 2 3 ,1 2 5 0 d a t a 1 9 4 ,1 2 6 0 d a t a 2 3 9 ,1 2 7 0 d a t a 1 1 2 8 0 d a t a 2 0 7 ,1 2 9 0 d a t a 2 5 5 ,1 3 0 0 d a t a 0 1 3 1 0 d a t a 2 5 5 ,1 3 2 0 d a t a 0 1 3 3 0 d a t a 1 0 0 ,1 3 4 0 d a t a 0 1 3 5 0 d a t a 2 5 4 ,1 3 6 0 d a t a 0 1 3 7 0 d a t a 1 0 9 ,1 3 8 0 d a t a 0 1 3 9 0 d a t a 2 1 5 ,1 4 0 0 d a t a 1 0 8 ,1 4 1 0 d a t a 2 5 5 ,1 4 2 0 d a t a 1 0 0 ,1 4 3 0 d a t a 6 4 1 4 4 0 d a t a 2 5 5 ,1 4 5 0 d a t a 1 2 1 4 6 0 d a t a 2 2 3 ,1 4 7 0 d a t a 0 1 4 8 0 d a t a 2 5 5 ,1 4 9 0 d a t a 0 1 5 0 0 d a t a 2 5 5 ,1 5 1 0 d a t a 0 1 5 2 0 d a t a 2 5 5 ,1 5 3 0 d a t a 6 4 1 5 4 0 d a t a 2 5 5 ,1 5 5 0 d a t a 0 1 5 6 0 d a t a 2 0 6 ,1 5 7 0 d a t a 2 4 6 ,1 5 8 0 d a t a 0 1 5 9 0 d a t a 2 5 5 ,1 6 0 0 d a t a 0 1 6 1 0 d a t a 2 5 5 ,1 6 2 0 d a t a 0 1 6 3 0 d a t a 1 9 5 ,1 6 4 0 d a t a 1 7 3 ,1 6 5 0 d a t a 4 1 1 6 6 0 d a t a 2 2 1 6 7 0 d a t a 6 3 1 6 8 0 d a t a 4 4 1 6 9 0 d a t a 3 1 7 0 0 d a t a 1 6 9 ,1 7 1 0 d a t a 1 3 4 ,1 7 2 0 d a t a 9 6 1 7 3 0 d a t a 9 6 1 7 4 0 d a t a 4 8 1 7 5 0 d a t a 1 1 7 6 0 d a t a 1 7 3 ,1 7 7 0 d a t a 1 3 1 7 8 0 d a t a 3 1 7 9 0 d a t a 1 9 2 ,1 8 0 0 d a t a 1 3 3 ,1 8 1 0 d a t a 2 3 3 ,

2 5 5 , 1 2 8 ,0 , 0

2 0 8 , 0 0 , 0 ,0 , 2 1 9 ,

2 5 5 , 5 0 9 , 2 1 9 ,

2 5 5 , 2 5 2 1 1 , 0

0 , 1 2 5 ,1 2 5 , 0

0 1 2 5 ,2 5 5 , 0

0 2 5 5 ,2 5 5 , 0

0 2 5 5 ,2 5 5 , 3 2

0 2 5 5 ,1 2 6 , 3 2

0 , 1 2 1 ,1 1 7 , 6 4

3 2 2 5 5 ,1 0 8 , 4 8 ,2 5 5 , 0

8 9 2 5 5 ,2 3 8 , 0

0 2 5 5 ,2 1 9 , 1 5 5 ,

0 , 1 2 7 ,2 2 3 , 1

0 2 5 5 ,2 1 9 , 2 1 9 ,

0 2 5 5 ,2 2 3 , 8 2 0 2 , 1 5 5 ,2 2 3 , 0 1 9 4 , 2 1 9 ,

0 2 5 5 ,2 5 5 , 0

0 2 4 7 ,2 5 3 , 3 2

0 , 2 5 1 ,2 3 1 , 0 2 0 8 , 8 7

2 4 2 0 8 ,1 2 7 , 1 4 1 ,2 0 8 , 1 4 1 ,2 0 8 , 7 1 7 3 , 0 1 4 1 , 6 7 ,1 9 4 , 1 4 1 ,1 9 4 , 1 7 3 ,1 4 1 , 2 1 6 9 , 1 2 7 ,

6 3 2 1 4 1 , 6 0

6 0 , 1 9 2 ,2 2 0 , 4 8

7 6 , 1 3 9 ,1 6 , 2 4 5 ,2 1 , 1 6 2 ,7 2 , 7 6 ,

0 , 7 ,1 0 0 , 0 ,0 , 0 ,0 2 3 9 ,

2 5 5 , 0 2 1 9 , 2 5 5 ,2 5 5 , 8 2 5 4 , 0

3 6 2 5 5 ,2 5 4 , 2 0

6 4 2 5 4 ,2 3 9 , 0

0 2 4 6 ,2 5 5 , 0

0 , 2 5 5 ' ,5 3 , 3 6 ,

0 2 5 5 ,2 5 5 , 7 7

0 , 2 0 7 ,2 4 7 , 1 0 9 ,

0 2 5 4 ,4 4 2 5 5 ,2 5 5 , 1 3 0 ,

1 3 0 , 2 5 5 ,2 5 5 , 2 0 2 ,

0 2 5 5 ,2 5 5 , 8

0 2 5 5 ,2 5 5 , 0

0 2 2 3 ,2 5 5 , 0 1 2 9 , 2 2 3 ,2 5 5 , 1 9 4 ,1 3 9 , 2 5 5 ,2 2 2 , 1 2 1 9 , 9 5

0 2 5 5 ,1 6 6 , 0

1 7 , 2 5 5 ,2 5 5 , 0

3 6 , 1 0 0 ,2 5 5 , 0 1 7 3 , 0 1 4 1 , 4 3

1 7 , 2 0 8 ,5 6 , 1 9 5 ,

1 7 3 , 1 3 , 1 4 1 ,

1 9 4 , 1 6 9 ,1 3 3 3 3 , 1 6 9 ,

1 4 1 , 1 3 8 8 , 1 9 5 ,

1 9 2 , 4 1 1 3 3 , 1

3 3 2 2 2 7 , 1 4 2 ,1 6 9 , 0 2 5 0 , 1 5 4 ,1 6 3 , 1 6 8 ,

2 4 8 , 0 1 5 , 2 4 0 ,

0 2 1 9 ,0 0

6 4 2 2 3 ,2 5 5 , 2 0 2 ,

0 2 2 3 ,2 0 6 , 1 9 4 ,2 4 6 , 0

0 2 5 5 ,2 5 5 , 0

0 , 1 2 5 ,2 5 5 , 4

0 2 5 4 ,2 5 5 , 0

0 2 5 4 ,2 5 5 , 1 1 7 ,

0 2 5 5 ,2 5 5 , 1 6

0 2 5 5 ,3 6 0

0 2 4 7 ,1 , 2 5 5 ,9 1 0

1 7 , 2 5 5 ,1 8 9 , 1

1 6 , 2 5 5 ,2 5 5 , 2 5

0 2 5 5 ,2 5 5 , 0 2 0 2 , 2 1 9 ,2 5 5 , 0

0 , 2 1 8 ,2 5 5 , 5 0

8 , 2 1 8 ,2 5 5 , 2 5 2 1 1 , 0

0 , 1 2 5 ,1 2 5 , 0

0 , 1 2 5 ,2 5 5 , 0

0 2 5 5 ,2 5 5 , 0 2 2 1 , 1 4 1 ,1 9 5 , 1 7 3 ,1 4 1 , 4 1 1 7 3 , 0

3 , 2 0 1 ,6 6 , 1 9 4 ,6 3 , 1 4 1 ,

1 7 3 , 2 1 4 1 , 1 3 5 ,1 9 4 , 1 4 1 ,2 2 0 , 1 7 3 ,

3 2 1 3 2 5 2 , 1 3 3 ,1 7 3 , 6 1 1 7 3 , 1 9 5 ,

1 3 3 1 3 3 , 2 0 1 6 9 , 1 6 7 ,

4 4 6 1

1 2 9 ,2 4 0 ,2 1 9 , 2 5 52 5 5 , 1 2 9

9 2 5 5 '1 5 5 , 1 3 9

0 , 2 2 22 1 9 , 2 1 92 5 5 ,

0 , 1 6 62 4 7 , 1

3 2 2 5 2 5 5 , 3

0 , 2 5 52 5 5 , 4

0 2 5 2 5 5 ,

0 , 2 5 52 5 5 , 3

0 , 1 1 72 5 5 ,

4 9 6 2 5 2 5 2 5 5 ,

0 , 1 2 72 5 5 , 1 9 4

0 , 2 5 12 5 5 , 4

0 2 5 2 5 5 , 1

9 , 2 0 02 5 5 ,

0 , 2 3 92 5 5 ,2 1 9 , 2 5 52 5 5 ,2 5 4 ,1 6 4 , 2 5 52 5 4 , 2

6 6 2 5 2 3 9 ,

0 , 2 3 01 7 3 , 4

4 5 , 1 9 51 7 , 2 0 8

1 9 5 , 1 7 33 , 2 0 1

1 9 4 , 2 4 01 7 3 ,

0 3 , 1 4 1

1 9 4 , 1 6 93

6 1 , 1 9 21 9 6 , 1 6 5

1 9 1 9 2 , 1 4 1

9 6 1 4 4 7

1 6 9 ,7 2 , 1 6 9

1 9 2 , 1 T h T r a n s a c t o r 2 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 28: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 28/84

L K E K F

O F F M F A F

C J K P L K

J J A

O F K H L J C G F

O H L N P

M A K G L

K O K C M I

P 0 N

D J I B A G

I L M P K K O

1 8 2 0 d a t a 3 1 8 3 0 d a t a 3 1 8 4 0 d a t a 1 9 4 ,1 8 5 0 d a t a 3 1 8 6 0 d a t a 1 6 4 ,1 8 7 0 d a t a 2 0 8 ,1 8 8 0 d a t a 2 5 3 ,1 8 9 0 d a t a 2 0 8 ,1 9 0 0 d a t a 1 6 0 ,1 9 1 0 d a t a 3 1 9 2 0 d a t a 1 5 3 ,1 9 3 0 d a t a 1 1 9 ,1 9 4 0 d a t a 1 3 4 ,1 9 5 0 d a t a 2 5 4 ,1 9 6 0 d a t a 1 7 3 ,1 9 7 0 d a t a 3 2 1 9 8 0 d a t a 1 4 2 ,1 9 9 0 d a t a 1 4 2 ,2 0 0 0 d a t a 1 2 0 1 0 d a t a 2 0 5 ,2 0 2 0 d a t a 7 6 2 0 3 0 d a t a 2 4 6 ,2 0 4 0 d a t a 1 6 2 ,2 0 5 0 d a t a 2 0 8 ,2 0 6 0 d a t a 1 6 2 ,2 0 7 0 d a t a 7 6 2 0 8 0 d a t a 1 2 0 9 0 d a t a 2 3 4 ,2 1 0 0 d a t a 0 2 1 1 0 d a t a 2 3 2 ,2 1 2 0 d a t a 1 6 9 ,2 1 3 0 d a t a 1 7 3 ,2 1 4 0 d a t a 1 4 1 ,2 1 5 0 d a t a 1 7 3 ,2 1 6 0 d a t a 1 9 3 ,2 1 7 0 d a t a 1 5 2 1 8 0 d a t a 7 3 2 1 9 0 d a t a 2 5 2 2 0 0 d a t a 1 6 0 ,2 2 1 0 d a t a 1 3 2 2 2 0 d a t a 1 9 5 ,2 2 3 0 d a t a 3 2 2 2 4 0 d a t a 3 2 2 2 5 0 d a t a 1 2 8 ,2 2 6 0 d a t a 1 9 2 ,2 2 7 0 d a t a 1 9 2 ,2 2 8 0 d a t a 2 4 0 ,2 2 9 0 d a t a 1 1 3 ,2 3 0 0 d a t a 2 2 1 ,2 3 1 0 d a t a 1 7 2 3 2 0 d a t a 1 6 9 ,2 3 3 0 d a t a 6 6 2 3 4 0 d a t a 1 2 8 ,2 3 5 0 d a t a 1 9 2 ,2 3 6 0 d a t a 7 1 2 3 7 0 d a t a 1 9 2 ,2 3 8 0 d a t a 1 4 1 ,2 3 9 0 d a t a 1 4 1 ,2 4 0 0 d a t a 6 4 2 4 1 0 d a t a 6 3 2 4 2 0 d a t a 3 2 4 3 0 d a t a 2 4 7 ,

3 2 2 0 2 ,1 7 3 , 6 7 1 4 1 , 2 1 6 9 , 0 2 5 4 , 2 4 0 ,2 5 1 , 2 3 0 ,2 4 0 , 1 0 2 5 1 , 1 4 5 ,2 0 4 , 1 3 2 ,1 3 2 , 2 5 4 ,1 1 9 , 1 9 2 ,1 9 3 , 1 3 6 ,2 5 2 , 1 6 2 ,' 7 6 , 1 3 6 ,

3 2 2 4 7 ,2 5 3 , 1 7 4 ,

8 4 , 1 9 2 ,8 6 , 1 9 2 ,4 4 5 7 8 3 , 1 9 2 ,7 2 , 1 7 8 ,9 6 , 1 7 3 ,

0 , 1 6 0 ,1 4 0 , 0 1 , 1 4 2 ,

1 8 8 , 2 5 4 ,1 4 1 , 2 5 1 2 0 , 2 3 8 ,1 4 2 , 2 6 2 0 8 , 2 4 8 ,

4 9 , 1 6 2 ,4 1 , 1 9 5 ,2 4 , 2 0 8 ,5 6 , 1 9 5 ,3 2 , 2 2 1 ,4 2 4 2

1 9 5 , 1 4 1 ,2 0 8 , 1 4 1 ,1 2 7 , 1 4 1 ,2 2 0 , 1 4 0 ,2 4 0 , 1 4 1 2 3 , 1 9 5 ,1 8 3 , 1 9 3 ,1 6 0 , 3 1 4 0 , 5 8 1 6 9 , 2 5 5 ,

3 3 2 1 9 5 , 1 7 3 ,1 6 9 , 5 6 ,2 0 8 , 1 6 9 ,2 1 6 , 1 4 1 ,1 9 2 , 1 7 3 ,1 4 1 , 5 6

1 0 , 1 0 ,1 9 2 , 1 7 3 ,

4 4 , 5 7 ,6 3 , 1 9 2 ,3 3 2 0 8 ,

1 9 2 , 3 2 1 9 2 , 7 6 1 8 9 , 8 3

9 6 , 4 4 ,

1 9 5 , 1 7 3 ,1 9 4 , 1 4 1 ,

3 , 1 7 3 ,1 4 1 , 7 4

1 3 , 1 6 0 ,2 5 2 , 1 9 8 ,1 3 6 , 2 4 0 ,2 5 1 , 9 6 2 5 2 , 1 6 0 ,

3 2 , 1 3 6 ,1 3 6 , 2 0 8 ,

1 6 , 2 5 0 ,6 4 , 1 3 4 ,

1 9 4 , 3 2 ,1 8 3 , 1 6 6 ,

3 2 2 2 4 ,3 2 , 2 2 1 ,

1 3 8 , 2 0 8 ,1 9 2 , 1 6 1 3 8 , 2 3 7 ,1 6 9 , 1 9 9 ,

1 8 , 2 0 8 ,1 9 9 , 1 4 1 ,2 2 1 , 1 6 9 ,

2 5 2 0 8 ,1 6 9 , 2 1 8 ,2 0 8 , 3 2

1 8 , 2 0 8 ,2 0 8 , 1 7 3 ,1 4 1 , 2 5 2 3 4 , 1 6 0 ,1 4 1 , 1 7 1 7 3 , 4 5 1 4 1 , 2 2 1 9 4 , 4 8

4 2 , 1 0 5 ,1 8 , 2 0 8 ,2 6 2 0 8 ,2 0 3 6 1 , 1 9 2 ,3 2 8 8

1 6 9 , 0 3 2 , 2 2 1 ,

2 0 8 , 2 1 9 2 , 1 5 2 ,1 4 1 , 5 5

4 4 , 1 9 6 ,0 , 2 2 1 ,

1 4 1 , 2 4 2 0 0 , 4 4

2 2 2 0 8 ,6 8 , 1 9 2 ,

1 9 2 , 3 2 1 0 1 0 8 3 , 1 9 2 ,

1 9 2 , 4 8 ,1 4 1 , 7 1

3 2 , 2 2 1 ,2 2 1 , 1 9 4 ,1 6 8 , 1 9 4 ,1 9 2 , 1 5 7 ,

8 2 , 1 9 2 ,

6 6 , 1 9 4 ,1 3

1 3 5 , 1 9 4 ,1 9 2 , 7 6

0 , 1 4 5 ,2 5 4 , 2 0 8 ,

5 , 1 4 5 ,1 6 0 , 0 2 3 2 , 1 3 2 ,1 9 4 , 1 6 9 ,2 5 0 , 1 6 0 ,1 3 3 , 2 5 1 ,2 5 3 , 1 6 2 ,2 5 3 , 1 7 4 ,

2 1 , 1 6 5 ,1 9 4 , 1 4 1 ,1 9 4 , 1 4 1 ,

2 1 , 1 6 9 ,3 , 1 6 9 ,

8 4 , 1 9 2 ,2 0 5 , 8 5 2 4 0 , 3 2

1 7 2 0 8 ,2 0 0 , 1 4 1 ,2 0 2 , 1 4 2 ,1 4 1 , 1 8

1 3 , 1 9 6 ,2 3 8 , 1 8

2 5 , 2 0 8 ,2 0 8 , 8 8 1 2 9 , 1 2 0 ,2 0 8 , 1 7 3 ,1 9 5 , 1 4 1 ,2 0 8 , 9 6

4 6 2 4 0 ,5 7 3

1 2 0 , 1 6 9 ,1 6 9 , 3 5 1 4 2 ,

8 8 1 9 5 ,1 4 1 ,

2 1 9 6 3 2 4 3

1 9 4 , 2 4 0 ,1 6 0 , 7

7 3 2 5 5 ,1 9 2 , 3 2

3 2 8 8 4 1 , 2 5 2 ,

2 0 8 , 1 6 9 ,5 7 , 1 9 2 ,9 6 , 1 6 9 ,

1 4 1 , 6 7 2 3 5 , 1 9 4 ,1 4 1 , 6 3

4 1 1 2

1 9 2 ,1 9 4 ,1 4 1 ,

3 2 2 3 5 ,5 1 , 1 9 2 ,1 6 2 7

1 5 1 3 7 6 4 1 6 5

1 4 1 ,1 7 3 , 1 3 41 4 1 ,1 3 1 , 1 6 42 5 1 , 2 0 02 4 3 , 1 6 42 5 1 , 1 3 61 3 2 , 2 5 12 5 3 , 1 6 0

0 , 1 6 86 3 , 1 5 3

1 6 2 , 2 2 43 1 , 1 3 43 2 , 1 3 82 0 9 8 3 , 1 9 28 5 , 1 9 26 3 , 1 6 2

1 5 9 , 2 0 21 7 6 ,1 9 2 , 1 4 41 6 9 , 2 1 4 2 , 2 2 2 2 0

1 8 , 2 0 82 0 8 , 1 6 9

7 6 4 2 0 8 , 1 6 22 0 8 ,

9 6 , 1 2 02 0 8 , 6

4 3 , 1 9 50 , 2 2 1

3 2 , 1 8 31 0 5 , 4 2 5 5 , 1 4 11 , 1 4 11 6 2 , 1 9 5

3 , 1 4 01 7 3 , 4 1 1 3 , 1 9 51 9 5 , 9

6 , 1 6 91 4 1 , 5 1 4 1 ,1 2 1 ,1 9 5 ,1 4 1 ,

5 9 , 1 4 11 6

1 , 1 4 11 9 2 , 1 6 91 7 3 , 8 1 9 2 , 1 4 11 4 1 , 6

6 3 1 9 1 6 8 , 1 9 4

1 5 , 1 4 11 9 2 , 1 7 31 9 4 , 1 6 22 0 2 , 1 1 6 9 , 1 1 9

5

3

N H E E

L M

I L

P H L I

K F C M O M D B P C P D H J G B H F

I E

M O K K I P G L H K A M M C

I B L M M A H K G B

M O G L F D

2 4 4 0 d a t a 1 3 3 ,2 4 5 0 d a t a 2 5 2 ,2 4 6 0 d a t a 1 7 6 ,2 4 7 0 d a t a 1 9 9 ,2 4 8 0 d a t a 2 5 2 ,2 4 9 0 d a t a 1 0 2 ,2 5 0 0 d a t a 1 7 4 ,2 5 1 0 d a t a 1 6 2 5 2 0 d a t a 1 0 1 ,2 5 3 0 d a t a 1 0 4 ,2 5 4 0 d a t a 2 5 3 ,2 5 5 0 d a t a 7 4 2 5 6 0 d a t a 9 2 5 7 0 d a t a 1 9 7 ,2 5 8 0 d a t a 2 1 6 ,2 5 9 0 d a t a 1 3 3 ,2 6 0 0 d a t a 1 6 9 ,2 6 1 0 d a t a 2 0 2 6 2 0 d a t a 1 3 3 ,2 6 3 0 d a t a 7 7 2 6 4 0 d a t a 1 0 6 ,2 6 5 0 d a t a 6 1 2 6 6 0 d a t a 2 5 5 ,2 6 7 0 d a t a 4 5 2 6 8 0 d a t a 1 2 8 ,2 6 9 0 d a t a 4 8 2 7 0 0 d a t a 2 4 0 ,2 7 1 0 d a t a 3 2 7 2 0 d a t a 1 9 6 ,2 7 3 0 d a t a 0 2 7 4 0 d a t a 1 9 2 ,2 7 5 0 d a t a 1 4 9 ,2 7 6 0 d a t a 1 0 7 ,2 7 7 0 d a t a 0 2 7 8 0 d a t a 4 2 7 9 0 d a t a 1 3 3 ,2 8 0 0 d a t a 0 2 8 1 0 d a t a 1 3 3 ,2 8 2 0 d a t a 5 6 2 8 3 0 d a t a 2 2 9 ,2 8 4 0 d a t a 1 0 0 ,2 8 5 0 d a t a 1 0 3 ,2 8 6 0 d a t a 1 4 4 ,2 8 7 0 d a t a 2 2 9 ,2 8 8 0 d a t a 8 2 2 8 9 0 d a t a 6 2 9 0 0 d a t a 2 0 8 ,2 9 1 0 d a t a 2 3 8 ,2 9 2 0 d a t a 3 2 2 9 3 0 d a t a 3 2 9 4 0 d a t a 0 2 9 5 0 d a t a 1 9 2 ,2 9 6 0 d a t a 3 2 2 9 7 0 d a t a2 9 8 0 d a t a2 9 9 0 d a t a3 0 0 0 d a t a3 0 1 0 d a t a3 0 2 0 d a t a3 0 3 0 d a t a 1 4 9 ,3 0 4 0 d a t a 1 0 8 ,3 0 5 0 d a t a 3 2

9 8 3 2

4 3

2 4 7 6

2 5 1 , 2 4 , 1 6 9 ,1 7 2 , 5 1 , 1 9 2 ,2 2 8 , 1 7 3 , 5 3 2 3 7 , 5 3 , 1 9 2 ,1 6 0 , 0 , 1 3 2 ,2 5 1 , 1 0 1 , 2 5 2 ,

5 2 , 1 9 2 , 4 5 6 1 0 7 2

2 5 1 , 1 3 3 , 2 5 1 ,4 1 7 2 4

1 6 5 , 2 5 2 , 7 4 1 0 2 , 2 5 3 , 1 3 3 ,1 6 9 , 2 0 4 , 5 1 7 3 , 6 6 , 1 9 2 ,

5 , 2 5 4 , 1 3 3 ,2 5 2 , 1 7 3 , 5 1

0 , 1 6 8 , 4 4 8 0 1 5 3 6

2 3 6 , 1 0 7 ,5 5 , 1 9 2 , 4 4

1 9 7 , 1 3 3 , 9 7 1 1 4 , 1 9 7 , 1 3 3 ,

4 9 , 2 5 1 , 5 6 7 , 1 9 2 , 1 3 6 4 , 3 2 , 1 6 1 2 3 3 2 1 1 3 2 , 2 4 5 ,3 2 , 2 3 1 , 1 9 8 ,7 6 4 6 , 1 9 4 ,

1 4 9 , 1 0 7 , 5 6 1 4 9 , 9 8 , 1 8 9 ,

9 9 1 6 2 0 5 6 , 1 6 9 , 0

2 4 5 , 9 9 , 1 4 9 ,1 4 9 , 1 0 6 , 1 4 9 ,1 0 3 , 1 6 5 , 9 8 2 2 9 , 9 8 , 1 3 3 ,1 0 5 , 3 6 , 1 0 7 ,1 6 9 , 0 , 2 2 9 ,1 0 9 , 1 3 3 , 1 0 9 ,1 3 3 , 1 0 2 , 1 7 0 ,1 9 7 , 9 9 , 1 4 4 ,

1 2 , 1 3 8 , 2 2 9 ,9 9 , 1 3 3 , 1 0 3 ,

1 9 2 , 3 2 , 2 3 5 ,3 2 9 5 , 1 9 8 ,1 6 3 2 , 1 2 7 ,

1 9 4 , 3 2 , 1 2 1 ,2 4 5 , 1 9 8 , 3 2

3 2 , 2 3 1 , 1 9 8 ,2 0 1 , 1 6 4 , 2 4 0 ,

9 6 , 3 2 , 2 0 1 4 6 , 1 9 7 , 1 6 2 ,1 9 7 , 1 0 0 , 1 6 5 ,2 0 2 , 1 9 7 , 3 2 2 3 0 , 1 0 5 , 2 4 0 ,2 3 8 , 5 2 , 1 9 2 ,1 7 3 , 5 3 , 1 9 2 ,1 2 3 , 1 9 8 , 1 6 2 ,1 0 0 , 1 4 8 , 9 8 1 4 8 , 1 0 6 , 2 0 2 ,1 3 9 , 1 9 6 , 2 3 0 ,

1 9 2 , 1 0 9 ,1 7 7 , 2 5 1 ,1 9 2 , 1 4 5 ,

7 2 , 7 4 ,2 5 1 , 7 4 1 3 3 , 2 5 2 ,

5 9 , 1 9 2 ,1 3 8 , 4 2 1 3 8 , 1 0 1 ,1 0 1 , 2 5 1 ,1 0 2 , 2 5 3 ,2 5 4 , 4 4 2 5 4 , 1 3 3 ,2 0 1 , 3 2 5 4 , 1 6 5 ,1 9 2 , 4 5 ,

5 6 , 1 9 2 ,2 4 8

4 8 1 5 7 , 1 9 2 ,

1 8 9 , 1 0 6 ,9 7 , 1 8 9 ,9 7 , 1 4 5 ,7 1 , 1 9 2 ,

8 , 4 ,1 2 4 , 1 9 6 ,1 9 8 , 3 2

3 2 2 0 1 6 9 , 1 1 8 9 , 8 3

8 4 , 1 9 2 ,1 6 9 , 2 5 5 ,2 4 5 , 9 8

9 9 , 9 6 ,1 0 7 , 9 6 1 0 6 , 1 3 3 ,1 0 4 , 1 6 9 ,

1 6 , 2 2 8 ,1 0 8 , 1 3 3 ,

9 6 2 4 1 6 5 , 1 0 3 ,

1 8 , 2 0 8 ,9 8 , 1 3 3 ,5 6 , 9 6 ,

1 9 4 , 3 2 7 6 , 8 9 ,

1 9 6 , 3 2 0 , 2 0 1 ,

1 2 1 , 0 3 2 9 5

2 2 0 , 1 6 9 ,1 9 4 , 1 6 2 ,

2 3 2 9 9 2 2 9 ,

1 3 9 , 1 9 6 ,8 4 2 3 8 ,3 2 2 4 6 ,

1 0 1 , 1 0 8 ,1 , 1 8 1 ,

1 8 1 , 1 0 6 ,1 6 , 2 3 7 ,

1 0 4 , 2 4 0 ,

5 2 , 1 9 2 , 1 3 32 0 5 , 5 3 , 1 9 22 5 1 , 5 6 , 1 6 9

7 4 7 4 , 1 3 31 0 2 , 2 5 1 , 7 1 7 3 , 5 1 , 1 9 2

4 4 5 7 , 1 9 21 7 0 , 1 0 4 , 2 2 5 2 , 1 3 3 , 2 5 21 3 3 , 2 5 1 , 1 3 3

7 4 , 1 0 2 , 2 5 35 7 , 1 9 2 , 4

2 5 4 , 7 6 2 1 4 4 , 2 4 0 , 1 6 92 5 2 , 9 , 2 2 4

5 8 , 1 9 2 , 1 7 01 6 4 , 1 1 2

9 , 1 6 9 , 2 5 59 6 , 1 7 7 , 2 5 14 8 1 0 6

1 9 7 , 2 0 8 ,1 1 4 , 1 9 7 , 7 32 5 1 , 1 7 7 , 2 5 31 4 5 , 2 5 3 , 9

2 1 , 1 9 23 2 , 1 2 1 , 0

1 2 1 , 0 , 2 4 01 9 4 , 3 2 , 1 7 11 4 9 , 1 0 6 , 1 6 91 9 2 , 2 5 3 , 5 2 5 3 , 5 2 , 1 9 21 4 9 , 1 0 6 , 1 4 91 4 9 , 9 8 , 1 6 9

2 1 9 8 , 2 0 81 6 5 , 9 9 7 1 0 2 , 2 4 , 1 6 90 , 2 2 9 , 9

3 2 , 1 2 7 , 1 9 61 0 8 , 1 6 9 ,1 6 5 , 1 0 2 , 1 0 11 0 1 , 1 0 1 , 1 3 3

4 , 2 2 8 , 9 1 0 2 , 1 6 5 , 1 0 31 6 9 , 1 2 8 , 1 4 11 2 1 , 0 , 2 0 81 9 8 , 2 0 1 , 1 6 41 1 5 , 0 3

4 4 , 2 0 8 , 1 32 0 1 , 4 4 , 2 0 81 9 8 , 3 2 , 1 2 1

0 , 1 4 1 , 8 0 , 1 3 4 , 2

1 4 6 , 1 9 7 , 1 6 51 0 1 , 1 4 4 , 3 2 3 0 , 1 0 4 , 2 0 8

5 1 , 1 9 2 , 2 0 81 9 7 , 1 4 4 , 2 3 21 4 1 , 5 3 , 1 9 2

9 8 , 1 8 0 , 1 0 01 8 0 , 1 0 8 , 1 4 9

3 2 , 2 0 2 , 1 9 72 8 , 2 3 8 , 5

T h T r a n s a c t o r 2 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 29: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 29/84

K I

G I

H H N E F L C B N

L B I

M H G K E L O B A N A I

C D G N B A O C H A F E P E N L

H C E B F O K

B A H O N P G C A

I G M

3 0 6 0 d a t a 1 9 2 ,3 0 7 0 d a t a 1 9 2 ,3 0 8 0 d a t a 1 0 1 ,3 0 9 0 d a t a 1 0 7 ,3 1 0 0 d a t a 7 6 3 1 1 0 d a t a 3 3 1 2 0 d a t a 2 2 1 ,3 1 3 0 d a t a 1 6 3 1 4 0 d a t a 1 4 1 ,3 1 5 0 d a t a 1 8 9 ,3 1 6 0 d a t a 1 7 0 ,3 1 7 0 d a t a 1 4 1 ,3 1 8 0 d a t a 6 2 3 1 9 0 d a t a 2 2 1 ,3 2 0 0 d a t a 1 9 4 ,3 2 1 0 d a t a 1 8 9 ,3 2 2 0 d a t a 1 4 1 ,3 2 3 0 d a t a 1 9 4 ,3 2 4 0 d a t a 2 0 2 ,3 2 5 0 d a t a 2 4 5 ,3 2 6 0 d a t a 1 9 8 ,3 2 7 0 d a t a 8 3 3 2 8 0 d a t a 8 4 3 2 9 0 d a t a 5 4 3 3 0 0 d a t a 9 5 3 3 1 0 d a t a 1 4 1 ,3 3 2 0 d a t a 1 4 1 ,3 3 3 0 d a t a 5 6 3 3 4 0 d a t a 1 9 2 ,3 3 5 0 d a t a 1 9 2 ,3 3 6 0 d a t a 7 9 3 3 7 0 d a t a3 3 8 0 d a t a3 3 9 0 d a t a3 4 0 0 d a t a3 4 1 0 d a t a 2 2 4 ,3 4 2 0 d a t a 1 3 3 ,3 4 3 0 d a t a 2 4 3 4 4 0 d a t a 2 5 3 ,3 4 5 0 d a t a 2 4 3 4 6 0 d a t a 1 3 3 ,3 4 7 0 d a t a 2 5 2 ,3 4 8 0 d a t a 2 2 4 ,3 4 9 0 d a t a 3 2 3 5 0 0 d a t a 3 2 3 5 1 0 d a t a 2 3 2 ,3 5 2 0 d a t a 1 9 5 ,3 5 3 0 d a t a 8 6 3 5 4 0 d a t a 2 1 5 ,3 5 5 0 d a t a 1 4 4 ,3 5 6 0 d a t a 1 3 9 ,3 5 7 0 d a t a 9 4 3 5 8 0 d a t a 1 4 3 5 9 0 d a t a 2 0 1 ,3 6 0 0 d a t a 2 0 2 ,3 6 1 0 d a t a 8 3 6 2 0 d a t a 2 0 1 ,3 6 3 0 d a t a 2 0 1 ,3 6 4 0 d a t a 2 4 0 ,3 6 5 0 d a t a 2 5 3 ,3 6 6 0 d a t a 4 4 3 6 7 0 d a t a 6 3

8 0 0

4 0 3 2

3 2 2 4 6 ,1 0 1 , 1 0 8 ,1 0 9 , 1 4 1 ,

1 6 3 4 6 , 1 9 4 ,

1 0 6 , 1 0 6 ,1 9 4 , 4 1

2 2 , 1 4 1 ,7 1 , 1 9 2 ;2 4 , 1 9 9 ,

2 5 5 , 3 2 6 3 , 1 9 2 ,

1 9 2 , 1 4 1 ,1 9 4 , 4 1

4 1 1 5 6 2 , 1 9 2 ,6 7 , 1 9 2 ,

1 6 2 , 3 1 6 , 2 4 7 ,

1 9 8 , 3 2 2 4 , 1 7 3 ,

1 9 2 , 1 7 3 ,1 9 2 , 1 7 3 ,1 9 2 , 1 4 1 ,1 9 8 , 5 6

8 5 , 1 9 2 ,8 6 , 1 9 2 ,

1 7 3 , 8 3 1 7 3 , 8 4

3 2 , 9 5 ,1 9 2 , 1 4 1 ,1 9 2 , 1 4 1 ,1 3 3 , 2 5 1 ,1 4 4 , 3 2 4 1 , 1 8 3 ,

2 5 , 1 7 6 ,2 5 1 , 1 4 4 ,1 7 3 , 7 5 1 3 3 , 3

7 2 1 0 5 ,4 , 6 ,6 , 2 5 1 ,

1 3 3 , 2 5 2 ,7 , 1 9 6 ,

1 4 3 , 1 7 3 ,2 0 2 , 2 0 8 ,

9 6 , 1 7 7 ,2 0 0 , 1 3 3 ,

4 8 1 7 4

2 0 1 ,2 0 1 ,2 0 8 ,

1 7 , 2 0 8 ,2 0 8 , 2 5 0 ,1 6 9 , 1

2 9 2 0 8 ,1 6 2 , 3

6 2 0 2 ,2 0 0 , 1 0

5 7 , 1 9 2 ,1 9 2 , 3 2 ,

4 1 4 1 3 2

6

1 9 7 , 1 4 4 , 2 4 1 ,1 4 1 , 5 1 , 1 9 2 ,

5 2 , 1 9 2 , 7 6 3 2 , 1 3 9 , 1 9 6 ,3 2 , 2 2 1 , 1 9 4 ,

1 0 6 , 1 4 1 , 5 6 3 , 2 4 0 , 2 7

6 6 , 1 9 2 , 1 7 0 ,1 8 9 , 6 7 , 1 9 2 ,1 4 1 , 5 5 , 1 9 2 ,2 2 1 , 1 9 4 , 1 0

4 4 5 7 , 1 9 2 ,6 3 , 1 9 2 , 7 6 1 5 , 1 4 1 , 6 4

1 4 1 , 6 5 , 1 9 2 ,1 4 1 , 7 1 , 1 9 2 ,

9 6 3 2 , 1 2 4 ,1 8 9 , 8 3 , 1 9 2 ,

3 2 , 1 2 1 , 0 1 2 1 , 0 , 2 4 0 ,

5 1 , 1 9 2 , 1 0 9 ,5 2 , 1 9 2 , 1 0 9 ,5 3 , 1 9 2 , 1 4 1 ,8 6 , 1 9 2 , 3 2

1 7 3 , 8 5 , 1 9 2 ,1 7 3 , 8 6 , 1 . 9 2 ,

3 2 2 7 , 1 9 5 ,1 9 2 , 2 3 7 , 7 7 1 9 2 , 2 3 7 , 7 8 1 9 8 , 2 4 , 1 7 3 ,

8 5 , 1 9 2 , 1 7 3 ,8 6 , 1 9 2 , 7 6

1 3 3 , 2 5 2 , 3 2 7 6 7 2 , 1 7 8 ,

1 4 2 , 7 6 , 1 9 2 ,2 3 7 , 2 4 , 1 6 5 ,

2 2 3 0 , 2 5 2 ,1 9 2 , 1 0 1 , 2 5 1 ,1 6 9 , 0 , 1 0 1 ,2 1 6 , 1 3 3 , 2 5 4 ,2 5 1 , 3 8 , 2 5 2 ,

3 8 , 2 5 2 , 2 4 1 7 3 , 6 1 , 1 9 2 ,

3 2 , 2 5 3 , 1 7 4 ,3 2 , 1 6 6 , 1 8 2 ,

7 , 1 0 4 , 4 8 3 4 3 2 , 1 0 5 ,

2 1 5 , 1 3 8 , 7 2 2 0 1 , 3 2 , 1 4 4 ,2 2 3 , 2 0 8 , 2 1 2 7 , 2 0 1 , 1 2 7 , .1 4 4 , 1 2 5 , 7 6

3 2 2 4 8 , 2 0 1 ,1 1 , 1 6 2 , 4 0 7 6 , 1 8 9 , 2 0 1 ,

1 4 1 , 8 1 , 1 9 2 ,6 3 2 , 1 0 0 ,

4 4 , 1 6 2 , 1 5 1 6 , 2 4 8 ,1 0 , 1 0 ,4 8 6 6 8 , 1 9 9 ,

1 9 2 ,4 4

1 8 9 ,1 4 1 ,

9 6 1 0 4 8

1 7 4 ,1 8 9 ,1 9 6 ,1 5 7 ,2 4 0 ,

3

7 6 1 0 1 3 7 6

2 4 , 1 7 3 , 5 1 7 3 , 5 2 , 1 9 21 8 3 , 1 9 8 , 3

3 2 , 1 2 7 , 1 9 64 1 3 7

9 6 3 5 7 , 1 9 26 2 , 1 9 26 7 , 1 9 2

0 8 1 0 1

9 1 6 8 , 1 9 9 , 3

1 9 2 , 3 2 , 2 2 16 6 , 1 9 26 7 , 1 9 23 2 2 3 7 7 , 1 9 21 1 3 3 2 2 3

7 7 , 1 9 2 , 1 4 17 8 , 1 9 2 , 1 4 18 5 , 1 9 2 , 1 7 3

3 , 1 9 5 , 3 2 3 7 , 7 9 , 1 9 22 3 7 , 8 0 , 1 9 2

3 2 9 5 , 1 9 81 9 2 , 1 4 1 , 8 1 9 2 , 1 4 1 , 6

8 5 , 1 9 2 , 1 0 98 6 , 1 9 2 , 1 0 99 5 , 1 9 8 , 1 6 9

2 4 1 , 1 8 3 , 2 2 41 4 2 , 7 5 , 1 9 21 3 8 , 2 4 0 , 1 82 5 1 , 1 0 5 , 4 2 0 2 , 2 0 8 , 2 4 1 3 3 , 2 5 1 , 1 3 32 5 2 , 1 3 3 , 2 5 21 0 4 , 1 0 5 , 2 0 4

6 , 2 5 1 , 3 1 6 5 , 2 5 2 , 1 0 5

7 2 4 8 3 2 , 1 5 8 , 1 7 3

1 7 0 , 1 6 0 ,3 3 2 , 1 7 3

2 0 0 . 2 0 0 , 7 1 5 2 , 7 2 , 1 6 5

2 8 , 2 0 1 , 9 4 1 , 6 3 , 7

2 0 8 , 2 , 1 6 91 3 7 , 2 0 1 , 2 0 1

7 6 , 1 8 9 , 2 0 13 2 , 1 0 0 , 2 0 1

2 0 1 , 1 8 , 2 0 87 6 , 1 8 9 , 2 0 1

2 0 1 , 7 6 , 1 8 92 2 1 , 2 3 7 , 2 0 1 8 9 , 2 0 1 , 1 8 91 4 1 , 6 3 , 1 9 2

6 2 , 1 9 2 , 1 4 11 8 9 . 2 0 1 ,

B B N A P I F

N C M C I H

G F I

D M J C L P C M

I C

I G N

O K E A

I H G H E

D A

3 6 8 0 d a t a 2 8 3 6 9 0 d a t a 2 2 3 7 0 0 d a t a 6 3 7 1 0 d a t a 1 2 3 7 2 0 d a t a 2 4 5 ,3 7 3 0 d a t a 1 6 2 ,3 7 4 0 d a t a 1 8 9 ,3 7 5 0 d a t a 8 1 3 7 6 0 d a t a 3 2 3 7 7 0 d a t a 2 3 7 8 0 d a t a 1 9 8 ,3 7 9 0 d a t a 1 3 3 ,3 8 0 0 d a t a 2 5 1 ,3 8 1 0 d a t a 9 6 3 8 2 0 d a t a 2 0 8 ,3 8 3 0 d a t a 1 3 3 ,3 8 4 0 d a t a 6 4 3 8 5 0 d a t a 2 0 1 ,3 8 6 0 d a t a 9 3 8 7 0 d a t a 2 0 2 ,3 8 8 0 d a t a 1 8 3 8 9 0 d a t a 1 6 3 9 0 0 d a t a 1 9 2 ,3 9 1 0 d a t a 1 0 4 ,3 9 2 0 d a t a 1 3 3 ,3 9 3 0 d a t a 6 3 9 4 0 d a t a 1 0 1 ,3 9 5 0 d a t a 1 3 3 ,3 9 6 0 d a t a 3 2 3 9 7 0 d a t a 2 0 8 ,3 9 8 0 d a t a 1 9 2 ,3 9 9 0 d a t a 2 2 0 ,4 0 0 0 d a t a 2 5 1 ,4 0 1 0 d a t a 1 4 0 2 0 d a t a 9 6 4 0 3 0 d a t a 3 2 4 0 4 0 d a t a 1 6 9 ,4 0 5 0 d a t a 0 4 0 6 0 d a t a 2 5 5 ,4 0 7 0 d a t a 2

3 1 2 4

4 1 4 7 6 3 2

3 0 2 3

0 1 3

2 0 1 ,4 0

2 0 1 , 2 0 1 ,1 9 2 , 7 6

6 0 2 0 1 ,1 9 8 , 2 5 4 ,4 , 1 9 8 ,2 5 1 , 1 6 5 ,2 0 1 , 0 2 3 0 , 2 5 3 ,

2 2 3 0 ,2 5 1 , 1 4 4 ,1 6 5 , 2 5 2 ,

9 6 9 1 2 8 , 3 2 1 7 7 , 5 2 0 2 , 2 0 0 ,

8 , 1 7 3 ,1 3 6 3

1 6 8 , 1 0 4 ,6 6 6 , 5 ,5 1 3 3 ,6 9 6

2 4 7 , 1 8 3 ,3 , 1 6 2 ,

1 6 2 , 0 4 1 , 2 5 4 ,

1 3 3 , 1 1 7 3 , 1 4

3 2 , 1 2 1 ,2 2 1 , 1 9 4 ,1 2 8 , 3 6 ,2 2 3 , 9

0 2 5 5 ,2 1 9 , 2 1 9

1 6 2 5

7 1 5

1 8 9 ,6 0 1 8

1 8 9 ,7 6

1 9 8 ,3

2 5 2 ,1 6 5 ,2 0 8 ,

4 2

2 3 3 ,6 4

1 9 4 ,1 4 5 ,1 7 3 ,

6 5 1 9 2 ,1 7 0 ,

5 3 8

5 3 2

1 6 6 ,2 0 8 ,1 4 2 ,1 4 1 ,

9 6 2 2 0 ,

0 1 4 1 ,1 6 9 ,2 3 9 ,

0

2 8 , 3 0 , 3 1 ,2 6 2 7 1

3 8 9 2 0 1 , 1 4 , 2 0 8 ,2 0 1 . 2 0 1 , 1 7 . 0 1 , 2 0 2 , 2 0 8 ,2 0 8 , 8 , 1 6 9 ,2 0 1 , 2 0 1 , 2 9 1 8 9 , 2 0 1 , 1 6 5 ,2 5 3 , 1 6 5 , 3

5 6 , 1 6 5 , 2 5 1 ,2 3 3 , 0 , 1 3 3 ,2 5 2 , 2 3 3 , 2 2 4 ,

2 2 3 0 , 2 5 4 ,2 4 , 1 6 9 , 8

2 3 0 , 2 5 2 , 1 6 5 ,2 5 5 , 1 4 4 , 3 1 7 4 , 8 1 , 1 9 2 ,2 0 1 , 1 6 0 , 7 2 5 1 , 1 3 6 , 1 6

6 2 , 1 9 2 , 4 4 1 9 2 , 1 4 5 , 2 5 3 ,1 4 5 , 3 3 2

9 6 , 1 3 3 , 5 3 8 6 6

6 2 4 , 1 7 3 ,1 7 3 , 7 3 , 1 9 2 ,2 5 3 , 1 7 4 , 3 2

2 1 , 2 0 8 , 9 4 4 , 1 6 2 , 2 1 6 ,7 2 , 1 9 2 , 9 6 1 4 , 2 2 0 , 1 6 5 ,

1 6 5 , 1 9 9 1 , 1 4 1 ,

2 4 0 , 1 5 3 2 7 7 , 1 9 4 , 1 4 2 ,

1 4 1 , 7 4 , 1 9 2 ,0 , 2 5 5 , 0

2 2 3 , 2 0 2 , 2 1 9 ,

2

1 3 1 7

1 2

1 0 6

2 0 8 ,2 5 0 ,

0 , 1 4 12 0 8 , 1 4 32 5 3 , 2 0 2 0 8 ,2 3 3 ,2 5 2 , 1 6 51 4 4 ,2 3 0 , '1 0 1 , 2 5 12 5 1 , 2 0 1

3 2 6 2 4 0 ,

3 2 2 4 9 , 3

5 7 1 9 1 7 3 , 6 1 0 0 , 2 0 11 6 9 ,

5 3 7 2 , 1 9 2

1 0 1 ,1 3 8 , 1 7 31 6 5 , 2 1 4 2 , 7 1 7 3 , 1

1 4 4 , 1 3 3

1 4 , 2 2 02 1 7 , 1 9 3

8 1 , 1 9 49 6 2 5

2 5 5 , 1 9 , 2 0 2

L i s t i n g 4 T h i s p r o g r a m c r e a t e s t h f i l e " h i p r n t 2 . m r , a l s o n e e d e df o t h p r o g r a m i n L i s t i n g 1

O L B

O F C O E B C E A K

I I L J

1 0 0 0 r e m * p r o g r a m t c r e a t e f i l e ' h i p r n t 2 . m r o d i s k1 0 1 0 f o t 1 1 3 6 r e a d1 0 2 0 c c x n e x t1 0 3 0 i c h < > 1 4 5 4 7 5 t h e n p r i n t ' c h e c k s u m e r r o r " : e n 1 0 4 0 p r i n t " d a t a o k n o c r e a t i n g f i l e " : p r i n t1 0 5 0 r e s t o r e1 0 6 0 o p e n 8 , 8 , 8 , " 0 : h i p r n t 2 . m l , p , w "1 0 7 0 p r i n t # 8 , c h r $ ( 0 ) c h r $ ( 1 5 2 ) ;1 0 8 0 f o t o 1 1 3 6 : r e a d x1 0 9 0 p r i n t # 8 , c h r $ ( x ) ; : n e x t1 1 0 0 c l o s e1 1 1 0 p r i n t " p r g f i l e ' h i p r n t 2 . m r c r e a t e d . . .1 1 2 0 p r i n t " t h i s g e n e r a t o r n l o n g e r n e e d e d .1 1 3 0 r e 1 1 4 0 d a t a 1 3 7 1 3 , 1 5 , 1 4 , 4 1 0 1 1 5 0 d a t a 5 1 2 6 2 , 9 , 1 1 0 , 0 , 6 1 1 6 0 d a t a 1 7 3 4 , 1 0 2 , 1 7 0 , 2 2 1 , 2 3 8 , 1 1 9 , 1 8 7 , 2 5 5

T h T r a n s a c t o r 2 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 30: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 30/84

L B B

J M M A C k J J E G O O B D E I D

P E F E H H K F A O J L

A M J L E C E

M K G N I

H N B 0

N C K J F O B G O E 0 E J N

1 1 7 0 d a t a 1 0 1 1 8 0 d a t a 2 0 0 ,1 1 9 0 d a t a 1 3 1 2 0 0 d a t a 2 1 7 ,1 2 1 0 d a t a 3 2 1 2 2 0 d a t a 2 5 5 ,1 2 3 0 d a t a 1 9 2 ,1 2 4 0 d a t a 7 4 1 2 5 0 d a t a 0 1 2 6 0 d a t a 2 1 2 7 0 d a t a 2 5 3 ,1 2 8 0 d a t a 1 3 3 ,1 2 9 0 d a t a 1 4 5 ,1 3 0 0 d a t a 2 0 8 ,1 3 1 0 d a t a 4 8 1 3 2 0 d a t a 1 6 9 ,1 3 3 0 d a t a 1 4 1 ,1 3 4 0 d a t a 2 5 4 ,1 3 5 0 d a t a 1 2 1 3 6 0 d a t a 1 5 3 ,1 3 7 0 d a t a 3 5 1 3 8 0 d a t a 2 3 5 ,1 3 9 0 d a t a 1 9 2 ,1 4 0 0 d a t a 1 9 2 ,1 4 1 0 d a t a 7 7 1 4 2 0 d a t a 1 5 0 ,1 4 3 0 d a t a 2 3 8 ,1 4 4 0 d a t a 7 1 4 5 0 d a t a 9 2 1 4 6 0 d a t a 1 9 2 ,1 4 7 0 d a t a 2 0 8 ,1 4 8 0 d a t a 2 5 5 ,1 4 9 0 d a t a 5 6 1 5 0 0 d a t a 2 3 3 ,1 5 1 0 d a t a 2 0 8 ,1 5 2 0 d a t a 2 4 8 ,1 5 3 0 d a t a 8 1 1 5 4 0 d a t a 1 9 2 ,1 5 5 0 d a t a 1 6 5 ,1 5 6 0 d a t a 4 8 1 5 7 0 d a t a 1 6 5 ,1 5 8 0 d a t a 7 6 1 5 9 0 d a t a 5 1 6 0 0 d a t a 2 4 7 ,1 6 1 0 d a t a 8 1 1 6 2 0 d a t a 5 7 1 6 3 0 d a t a 7 9 1 6 4 0 d a t a 8 3 1 6 5 0 d a t a 2 3 4 ,1 6 6 0 d a t a 2 5 5 ,1 6 7 0 d a t a 1 7 0 ,1 6 8 0 d a t a 1 6 1 6 9 0 d a t a 4 0 1 7 0 0 d a t a 1 7 7 ,1 7 1 0 d a t a 1 4 1 ,1 7 2 0 d a t a 1 8 9 ,1 7 3 0 d a t a 2 5 1 7 4 0 d a t a 1 6 5 ,1 7 5 0 d a t a 1 7 7 ,1 7 6 0 d a t a 1 9 2 ,1 7 7 0 d a t a 4 1 1 7 8 0 d a t a 1 8 9 ,

7 7 7 5 1 0

0 2 3 5 ,1 4 1 ,

3 2 7 4

1 7 2 ,1 6 9 ,1 3 3 ,2 5 4 ,2 5 3 ,2 4 3 ,

3 1 9 0 ,

7 5 1 3 3 ,

3 2 1 6 9 ,1 5 2 ,1 5 3 ,1 0 5 ,1 4 1 ,1 9 2 ,1 4 4 ,

7 9 1 7 7 ,1 5 4 ,1 0 6 ,2 3 5 ,1 3 6 ,1 6 5 ,

1 8 0

1 6 5 ,1 9 2 ,

4 8 2 5 4 ,

1 2 5 2 ,1 9 9 ,1 8 5 ,

3 2 1 9 2 ,1 9 2 ,1 9 2 ,1 9 2 ,1 7 3 ,

4 1 7 4

1 8 8 ,1 3 3 ,2 5 1 ,

7 9 1 0 3 ,1 5 4 ,2 5 2 ,2 5 1 ,

9 6 2 4 0 ,7 7

2 7 2 7 1 0

1 5 2 ,1 9 4 ,

8 1 5 4 3 2 8 5 6 1

2 5 1 ,3 2

2 0 0 ,3 2 3 2

1 3 3 ,1 9 2 ,

1 2 1 0 ,

2 5 3 2 4 4

1 5 0 ,7 8

1 4 1 ,1 1

1 9 2 ,2 5 3 ,

7 2 4 6

1 7 3 ,1 6

2 5 3 ,1 3 3 ,

7 6 1 9 7 ,1 7 0 ,

6 1 0 5 ,

2 4 1 0 5 ,1 5 2 ,

4 1 2 3 5 ,

1 6 4 8

1 4 4 ,1 0 6 ,

8 3 8 5 1 3 7 6

2 5 1 ,7 2

1 9 2 ,1 9 2 ,1 4 1 ,1 7 0 ,1 3 4 ,

3 2 1 4 1 ,1 9 2 ,

2 7 1 0

0 3

8 3

3 5 1 3 1 3

2 4 0 ,1 7 3 ,1 9 2 , 1 6 9 ,1 5 2 , 1 7 3 ,

5 4 , 1 5 2 ,1 9 2 , 2 0 8 ,

3 2 , 1 9 5 ,1 6 9 , 2 2 4 ,

2 0 , 1 9 4 ,2 0 8 , 2 4 9 ,

4 6 , 1 9 4 ,7 , 1 9 6 ,

2 5 4 , 3 2 3 2 , 1 7 6 ,

1 7 4 , 8 1 ,2 5 5 , 1 4 1 4 1 , 7 6 2 1 0 , 2 5 5 ,

5 7 , 1 9 2 ,1 6 2 , 0 1 9 2 , 1 0

7 7 , 1 9 2 ,2 3 8 , 7 8 1 6 2 , 3 1 6 2 , 4 1 8 9 , 7 7

8 3 , 1 9 2 ,8 3 , 1 9 2 ,

2 1 7 , 2 0 6 ,2 3 3 , 6 4 2 5 4 , 1 7 3 ,1 4 3 , 1 5 4 ,2 0 1 , 6 3 2 4 0 , 7 1 6 5 , 2 5 3 ,

3 0 , 1 3 3 ,1 6 5 , 2 5 1 ,

3 , 1 3 3 ,1 6 9 , 2 5 1 5 2 , 3 2 ,1 5 3 , 1 6 0 ,

4 1 0 1 2 4 , 1 6 2 ,

3 , 1 7 3 ,4 6 , 8 3 ,

1 9 2 , 6 9 1 0 , 1 4 1 ,8 3 , 1 9 2 ,5 4 , 1 5 3 ,

1 7 6 , 2 4 1 1 5

1 0 4 , 7 4 4 4 , 5 7 ,8 0 , 1 9 2 ,4 1 3

2 5 2 , 4 1 9 2 , 1 5 4 ,8 3 , 1 9 2 ,4 1 1 5

1 6 5 1 1 , 1 4 4 ,

7 7 2 7 1 3 6 , 1 6 1 9 2 , 2 4 0 ,

1 5 , 1 6 8 ,7 1 , 1 9 2 ,

1 5 2 , 4 8 2 7 3

2 5 5 , 1 6 9 ,1 3 3 , 2 5 2 ,1 , 6 0 , 0 2 3 0 , 2 5 4 ,1 7 3 , 6 1 1 6 9 , 2 0 4 ,1 0 9 , 1 5 4 ,1 5 4 , 1 6 5 ,1 9 2 , 2 4 0 ,

7 5 , 1 9 2 ,1 9 2 , 1 6 0 ,1 3 6 , 1 6

4 8 1 3 8 ,1 4 1 ,1 7 3 ,

4 6 4 2 7 9 8 0

1 9 2 , 2 3 8 ,1 4 2 , 8 0 1 4 2 , 8 1 1 9 2 , 1 0 6 ,1 0 4 , 2 0 6 ,

6 9 2 7 6 , 1 9 2 ,

1 3 3 , 2 5 3 ,8 1 , 1 9 2 ,

2 0 6 , 7 5 2 4 0 , 2 4 2 ,

7 3 , 1 2 8 ,1 0 5 , 8 2 5 4 , 2 0 2 ,1 0 5 , 2 3 2 ,2 5 2 , 2 3 2 ,1 4 1 , 7 6 2 1 0 , 2 5 5 ,

7 , 1 7 7 ,1 0 , 1 0 ,

4 1 0 8 0 , 1 9 2 ,

1 9 2 , 1 0 4 ,2 , 1 7 0 ,

8 3 , 1 9 2 ,3 2 , 2 1 0 ,5 6 , 1 6 5 ,

1 9 8 , 2 5 2 ,1 7 0 , 1 8 9 ,

7 4 , 7 4 ,1 9 2 , 1 6

9 6 , 1 4 1 ,9 , 2 1 6 ,

1 5 , 1 7 0 ,7 2 , 1 8 9 ,

1 0 4 , 3 2 1 3 8 3

2 7 7 5 2 5 0 2

2 4 8 , 9 2 , 1 6 9

4 5 6 7 4 7

2 , 1 6 92 5 5 , 1 3 3

0 , 1 3 31 6 9 , 1 6 01 7 7 , 2 5 12 3 0 , 2 5 1 9 2 , 7 1 3 3 , 2 5 21 6 9 , 4

1 4 1 1 , 1 6 97 6 , 1 4 3

5 , 1 8 52 4 7 , 3 1 7 3 , 7 1 4 1 , 7 1 9 2 , 1 1 9 2 , 1 0 5

7 8 , 1 9 21 9 2 , 1 6 01 9 2 , 3

4 6 8 8 1 , 1 9 23 2 , 2 1 0

2 4 0 , 2 1 6 5 , 2 5 42 4 0 , 1 3 81 9 2 , 2 4 0

2 4 , 1 7 31 4 1 , 8 11 3 3 , 2 5 31 3 8 , 5 1 3 3 , 2 5 12 0 8 ,1 9 2 , 1 6 01 3 6 , 1 2 5 3 , 4

1 0 4 7 2 , 1 7 3

1 0 6 , 4 2 0 2 , 2 0

3 2 , 2 1 01 3 8 , 4 2 5 5 , 1 3 62 5 1 , 2 3 31 6 0 ,1 0 3 , 1 9 2

7 4 , 1 7 03 3

7 8 , 1 9 21 3 3 , 2 5 21 8 9 , 1 0 3

7 7 , 1 9 29 2 , 1 5 41 9 2 , 6

H P K P K F L L P

A H K

M B P C E L D E A 0 B P K P O 0 O N F

C L O B

I O B C K F H

I I

H D N C H P I

C M G H P K K M E A N

1 7 9 0 d a t a 2 1 8 0 0 d a t a 1 4 1 ,1 8 1 0 d a t a 1 3 1 ,1 8 2 0 d a t a 1 9 2 ,1 8 3 0 d a t a 1 6 0 ,1 8 4 0 d a t a 1 6 9 ,1 8 5 0 d a t a 6 1 1 8 6 0 d a t a 3 2 1 8 7 0 d a t a 1 8 9 ,1 8 8 0 d a t a 1 6 9 ,1 8 9 0 d a t a 6 0 1 9 0 0 d a t a 3 2 1 9 1 0 d a t a 8 4 1 9 2 0 d a t a 1 9 2 ,1 9 3 0 d a t a 1 0 4 ,1 9 4 0 d a t a 7 4 1 9 5 0 d a t a 2 5 2 ,1 9 6 0 d a t a 2 3 1 ,1 9 7 0 d a t a 5 7 1 9 8 0 d a t a 2 0 8 ,1 9 9 0 d a t a 4 2 0 0 0 d a t a 1 7 9 ,2 0 1 0 d a t a 3 2 0 2 0 d a t a 1 6 9 ,2 0 3 0 d a t a 8 8 2 0 4 0 d a t a 1 0 6 ,2 0 5 0 d a t a 4 2 0 6 0 d a t a 1 9 2 ,2 0 7 0 d a t a 0 2 0 8 0 d a t a 1 4 1 ,2 0 9 0 d a t a 2 0 1 ,2 1 0 0 d a t a 1 9 2 ,2 1 1 0 d a t a 2 3 2 ,2 1 2 0 d a t a 1 4 2 ,2 1 3 0 d a t a 1 7 4 ,2 1 4 0 d a t a 2 3 2 ,2 1 5 0 d a t a 1 8 7 ,2 1 6 0 d a t a 1 9 2 ,2 1 7 0 d a t a 8 5 2 1 8 0 d a t a 1 8 5 ,2 1 9 0 d a t a 1 6 2 ,2 2 0 0 d a t a 2 0 8 ,2 2 1 0 d a t a 1 8 5 ,2 2 2 0 d a t a 1 0 3 ,2 2 3 0 d a t a 2 0 5 ,2 2 4 0 d a t a 1 5 2 2 5 0 d a t a 0 2 2 6 0 d a t a 1 3 4 ,2 2 7 0 d a t a 2 5 4 ,2 2 8 0 d a t a 1 5 6 ,2 2 9 0 d a t a 1 6 2 ,2 3 0 0 d a t a 1 3 5 ,2 3 1 0 d a t a 1 4 1 ,2 3 2 0 d a t a 1 6 2 ,2 3 3 0 d a t a 2 2 4 ,2 3 4 0 d a t a 1 6 0 ,2 3 5 0 d a t a 1 4 0 ,2 3 6 0 d a t a 1 6 5 ,2 3 7 0 d a t a 2 0 5 ,2 3 8 0 d a t a 2 2 3 9 0 d a t a 2 0 8 ,2 4 0 0 d a t a 2 5 5 ,

1 5 8 8 1 5 8 8

1 7 0 , 3 2 8 3 , 1 9 2 ,

1 6 2 , 0 1 0 , 4 6 ,

5 , 1 6 9 ,0 3 2

3 2 , 2 0 1 ,2 1 0 , 2 5 5 ,

4 7 , 1 5 2 ,6 1 , 3 2 ,

1 9 2 , 9 1 7 3 , 1 9 5 ,1 9 2 , 2 0 2 ,1 6 0 , 0 1 7 4 , 8 4

7 4 , 3 2 ,2 0 6 , 8 3 2 0 8 , 2 2 0 ,1 9 2 , 1 6

4 1 1 5 7 ,

4 1 2 5 4 ,2 0 7 , 1 3 3 ,1 9 2 , 1 0 6 ,1 1 0 , 8 3 1 1 0 , 8 3 ,2 0 0 , 2 0 0 ,1 4 2 , 8 5

7 7 , 1 9 2 ,3 5 , 1 7 6 ,

2 0 1 , 3 5 1 4 4 , 2 2 9 ,

8 4 , 1 9 2 ,8 3 , 1 9 2 ,

2 3 6 , 8 4 1 4 , 8 5 ,1 4 8 5

1 9 2 , 4 8 1 6 , 1 5 2 ,1 6 , 2 0 2 ,

7 , 1 6 9 ,1 0 3 , 1 9 2 ,1 9 2 , 2 0 2 ,

8 3 , 1 9 2 ,1 7 0 , 1 8 9 ,1 4 1 , 8 5 2 5 2 , 1 3 2 ,1 3 2 , 2 5 3 ,1 6 2 , 1 3 1 ,2 1 6 , 1 6 0 ,1 6 0 , 1 5

3 3 2 0 8 ,9 6 , 1 6 0 ,

1 6 0 , 0 6 3 , 3 2 ,7 7 , 1 9 2 ,

2 5 2 , 2 0 5 ,7 7 , 1 9 2 ,

2 3 0 , 2 5 2 ,2 2 3 , 0

2 1 0 , 2 5 5 ,1 3 8 , 4 1 1 4 2 , 8 5

8 5 , 1 9 2 ,6 1 , 1 6 2 ,

1 8 9 , 2 5 5 ,2 5 5 , 1 6 2 ,2 0 2 , 1 6

3 2 , 2 1 0 ,1 9 5 , 2 5 5 ,

3 , 1 3 3 ,9 6 , 1 6 2 ,1 6 , 2 5 0 ,

1 7 7 , 2 5 1 ,1 9 2 , 2 0 8 ,

1 0 , 1 5 5 ,1 9 2 , 4 8 1 7 4 , 8 4

3 7 , 1 4 1 ,1 0 , 1 7 0 ,

1 9 2 , 1 6 9 ,1 0 , 1 7 0 ,

1 9 2 , 9 6 ,2 5 2 , 1 6 0 ,1 4 1 , 8 3 1 9 2 , 1 0 6 ,1 9 2 , 1 0 6 ,2 3 2 , 2 2 4 ,1 9 2 , 1 4 2 ,1 8 8 , 0

1 7 , 1 0 9 ,1 7 6 , 1 2 1 7 3 , 7 7 1 7 3 , 8 5 1 8 8 , 0 1 9 2 , 1 4 4 ,1 9 2 , 1 4 1 9 2 , 2 0 2 ,

4 1 0 1 5 7 , 1 0 3 ,1 8 8 , 0 2 5 5 , 1 5 3 ,1 4 1 , 8 3 1 8 8 , 0 2 4 0 , 2 3 9 ,1 0 3 , 1 9 2 ,1 9 2 , 9 6 ,2 5 1 , 1 6 2 ,1 6 2 , 1 3 1 ,1 6 0 , 4 0 ,

0 , 1 3 4 ,3 2 , 6 2 ,3 2 , 1 8 3 ,

0 , 1 3 4 ,1 3 4 , 2 5 4 ,

6 2 , 1 5 6 ,1 6 0 , 0

7 8 , 1 9 2 ,2 0 8 , 1 2 3 0 , 2 5 3 ,2 5 5 , 0

4 1 2 0 4 ,1 9 2 ,1 7 4 ,

4

5 1 7 4 1 0 8 5 3 2

3 2 , 1 9 2 ,7 , 1 8 9 ,

2 4 7 , 9 6 2 5 5 , 2 0 2 ,

3 2 2 0 4 ,1 , 1 0 4 ,

3 4 , 1 6 9 ,1 6 9 , 3

7 2 3 2 8 4 1

1 3 6 , 2 0 8 ,6 2 0 8 ,

1 9 2 , 2 0 8 ,8 4 , 1 9 2 ,

1 8 9 , 8 8 ,2 1 6 , 1 3 3 ,2 5 4 , . 8 7 ,1 6 9 , 2 3 2 ,

0 , 1 6 2 ,1 9 2 , 1 8 5 ,

4 4 , 5 7 ,1 0 5 , 0

1 6 , 2 0 8 ,8 3 , 1 9 2 ,

1 5 2 , 1 8 5 ,7 7 , 1 9 2 ,

2 2 4 , 1 5 1 9 2 , 2 0 8 ,1 9 2 , 2 3 8 ,1 5 2 , 1 5 3 ,2 4 4 , 2 2 4 ,

8 5 , 1 9 2 ,1 8 9 , 1 0 3 ,1 1 2 , 1 1 9 2 , 2 0 2 ,1 5 2 , 1 8 5 ,1 0 3 , 1 9 2 ,1 9 2 , 1 6 9 ,1 5 2 , 1 8 5 ,1 7 3 , 3 3 ,1 4 1 , 7 7 ,1 6 2 , 1 2 7 ,2 0 4 , 1 6 0 ,1 6 0 , 3 9 1 3 4 , 2 5 2 ,2 5 4 , 1 3 2 ,1 5 6 , 1 7 3 ,1 9 3 , 3 2 2 5 2 , 1 3 2 ,1 3 2 , 2 5 3 ,

9 6 , 1 4 2 ,1 7 7 , 2 5 1 ,2 0 8 , 8

9 6 2 3 0 ,2 0 8 , 2 2 7 ,2 5 5 , 0

1 0 1 7 4 , 1 1 24 6 8

1 9 2 , 9 1 8 6 , 2 5 52 5 5 , 1 6 2

2 7 , 1 5 21 6 2 ,

1 6 , 2 4 72 5 5 , 1 7

4 8 0 , 1 5 7

1 4 1 , 8 7 , 1 5 5

2 4 0 , 7 2 3 3 , 2 3 02 2 2 , 1 6 0

4 2 , 1 7 31 7 3 , 3 1 9 2 , 1 0 52 5 2 , 2 0 1 9 2 , 2 0 81 3 3 , 2 5

0 , 1 8 58 7 , 1 9 2

1 9 2 , 1 1 5 7 , 8 2 2 0 , 1 6 21 6 9 ,

8 7 , 1 9 21 4 1 , 7 1 7 6 ,

1 , 2 3 28 5 , 1 9 2

1 0 3 , 1 9 21 6 , 1 4 41 4 8

1 9 2 , 4 1 0 , 1 6 81 6 , 2 3 48 7 , 1 9 2

2 0 8 , 2 4 2 5 5 , 1 5 31 0 3 , 1 9 22 0 8 , 4 11 9 2 , 1 6 91 6 0 , ^ 6

0 , 1 3 43 2 6

1 3 2 , 2 5 12 5 3 , 1 6 2

1 6 , 1 3 52 3 0 , 1 9 52 5 1 , 1 6 2

< 6 2 , 1 2 77 8 , 1 9 2

1 4 5 , 2 5 31 6 5 , 2 5 12 5 1 , 2 0 82 3 0 , 2 5 2 5 5 ,

T h T r a n s a c t o r 2 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 31: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 31/84

C o m p u t e r G e n e r a t e dH o l o g r a p h y o C 6

P a t r i c k H a w l e yP o r t E l g i n , O n t a r i o

. . t h e k e i k n o w i n g t h a t d i f f r a c t i o n e f f e c t s a r d e s c r i b e d b F o u r i e r T r a n s f o r m .

I n t r o d u c t i o n

I t h i s p r o g r a m m i n g p r o j e c t C o m m o d o r e 6 i u s e dt p r o d u c e p l o t w h i c h c a b p h o t o g r a p h i c a l l y r d u c e d t b e c o m e c o m p u t e r g e n e r a t e d h o l o g r a m .

W h e n m o s t p e o p l e t h i n k o h o l o g r a m s , t h e y t h i n k o t h e s m a l lp i c t u r e s o t h e i r c r e d i t c a r d s o t h c o v e r s o N a t i o n a l G e g r a p h i c m a g a z i n e ( M a r c h / 8 4 o N o v . / 8 5 ) . T h e s e t h r e e -d i m e n s i o n a l h o l o g r a m s a r e t h e r e c o r d o a i n t e r f e r e n c e p a t t e r nm a d e b l e n s l e s s p h o t o g r a p h i c m e t h o d t h a t u s e s l a s e r s . T h i n t e r f e r e n c e p a t t e r n c o n t a i n s b o t h t h p h a s e a n a m p l i t u d ei n f o r m a t i o n n e c e s s a r y t c o n s t r u c t a n i m a g e b y t h d i f f r a c t i o na n i n t e r f e r e n c e o l i g h t . C o m p u t e r g e n e r a t e d h o l o g r a m s , s u c ha s t h e o n t h a t w i l l b d e s c r i b e d i n t h i s a r t i c l e , a r d i f f r a c t i o ng r a t i n g s ( w h i c h i b a s i c a l l y w h a t h o l o g r a m i s t h a t g i v e t w o -d i m e n s i o n a l d i f f r a c t i o n p a t t e r n s o a i n p u t i m a g e .

B a c k g r o u n d

I o r d e r t u n d e r s t a n d w h a t t h p r o g r a m d o e s , b a s i c u n d e rs t a n d i n g o i n t e r f e r e n c e a n d i f f r a c t i o n o f l i g h t w a v e s i r q u i r e d . T h t e r m i n t e r f e r e n c e i u s e d t d e s c r i b e t h c o m b i n i n go t w o m o r e w a v e s o t h s a m e f r e q u e n c y i t h s a m e r e g i o no s p a c e . W h e t h e r t h i n t e r f e r e n c e i c o n s t r u c t i v e o d e s t r u c t i v ed e p e n d s o t h p h a s e r e l a t i o n s h i p b e t w e e n t h w a v e s . I t h w a v e s a r i p h a s e t h e i r a m p l i t u d e s w i l l a d d ; i t h w a v e s a r e o u to p h a s e , t h e n t h e i r a m p l i t u d e s w i l l s u b t r a c t . A w i l l b e p l a i n e d , i i t h c o n s t r u c t i v e a n d e s t r u c t i v e i n t e r f e r e n c e o l i g h tw a v e s t h a t m a k e s t h l i g h t a n d a r k s p o t s f o u n d i d i f f r a c t i o np a t t e r n .

D i f f r a c t i o n i t h t e r m u s e d t n a m e p h e n o m e n o n t h a t l i g h tp o s s e s s e s , w h i c h i t h a t i s p r e a d s o u w h e n p a s s i n g a e d g e . A e x p l a n a t i o n f o r t h i s c a b g i v e n i t e r m s o i n t e r f e r e n c e e f f e c t sw i t h i n s i n g l e b e a m w h e n t h l i g h t b e a m i t h o u g h t o a t h s u o m a n y i n d i v i d u a l s o u r c e s ( H u y g e n ' s p r i n c i p l e ) . D i f f r a c t i o ne f f e c t s a r m o s t n o t i c e a b l e w h e n d e a l i n g w i t h n a r r o w b e a m s o l i g h t w h e n t h e f f e c t o t h l i g h t s p r e a d i n g a r o u n d a e d g e ,m e a n s t h a t g e o m e t r i c o p t i c s c a n l o n g e r b a p p l i e d .

I n s i g h t c a b g a i n e d i n t o i n t e r f e r e n c e , d i f f r a c t i o n a n d i f f r a ct i o n g r a t i n g s b c o n s i d e r i n g t h e c a s e o b e a m o l i g h t p a s s i n gt h r o u g h t w s l i t s a s h o w n i F i g u r e 1 T h l i n e s s h o w i n g t h l i g h t r e p r e s e n t s p e c i f i c p h a s e o t h w a v e ( t h e w a v e c r e s t s i y o l i k e ) . A t h w a v e s h i t h s l i t s p a r t o t h e m w i l l g t h r o u g h .O t h " d o w n s t r e a m " s i d e o t h s l i t s , t h l i g h t s p r e a d s o u i a l d i r e c t i o n s d u t o d i f f r a c t i o n . T h i s c a u s e s t h t w b e a m s c o m i n g

S C R E E N

D I F F R A C T E D L I G H T

O P A Q U E P L A T EW I T H S L I T S

- L I G H T B E A M

F i g u r e 1 L i g h t d i f f r a c t e d b d o u b l e s l i t . d i s t a n ts c r e e n w o u l d s h o w d i f f r a c t i o n p a t t e r n o l i g h t a n d a r ks p o t s c o r r e s p o n d i n g t a r e a s o c o n s t r u c t i v e a n d e s t r u ct i v e i n t e r f e r e n c e .

f r o m t h s l i t s t o v e r l a p . I a s c r e e n i p l a c e d a d i s t a n c e t h a t i f a c o m p a r e d t t h d i s t a n c e b e t w e e n t h s l i t s , d i f f r a c t i o np a t t e r n c a b s e e n . W h e r e v e r t h e o v e r l a p p i n g b e a m s i n t e r f e r ec o n s t r u c t i v e l y , t h s c r e e n w i l l b b r i g h t . W h e r e v e r t h o v e r l a pp i n g b e a m s i n t e r f e r e d e s t r u c t i v e l y , t h e s c r e e n w i l l b d a r k . F o e x a m p l e , i t h t w b e a m s m u s t t r a v e l t h s a m e d i s t a n c e t r e a c h a g i v e n p o i n t o t h e s c r e e n , t h e y w i l l a r r i v e t h e r e i p h a s ea n m a k e b r i g h t s p o t . I o n b e a m m u s t t r a v e l h a l f w a v el e n g t h m o r e t h a n t h o t h e r t r e a c h a g i v e n p o i n t , i w i l l a r r i v eo u o p h a s e , a n t h a t p o i n t w i l l b d a r k . T h e s e r e g i o n s o a l t e r n a t i n g b r i g h t a n d a r k i n t e n s i t y a r c a l l e d i n t e r f e r e n c ef r i n g e s a n t h w h o l e i m a g e o t h s c r e e n i t h i n t e r f e r e n c e o d i f f r a c t i o n p a t t e r n . T h d i f f r a c t i o n e f f e c t s s e e n o a s c r e e n t h a ti f a c o m p a r e d t t h d i s t a n c e b e t w e e n t h s l i t s ( a i t h i s c a s e )a r e c a l l e d F r a u n h o f e r d i f f r a c t i o n .

N o t h c o n c e p t o t h c o m p u t e r p r o g r a m c a b e x p l a i n e d . W w a n t p r o g r a m t h a t w i l l a r r a n g e s l i t s i s u c h w a t h a t w h e nl i g h t i d i f f r a c t e d b t h s l i t s t h r e s u l t i n g d i f f r a c t i o n p a t t e r n

T h T r a n s a c t o r 2 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 32: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 32/84

f o r m s p r e d e t e r m i n e d i n p u t i m a g e . O u a r r a n g e m e n t o s l i t sc a t h e n b c a l l e d a h o l o g r a m .

T g f u r t h e r w m u s t k n o w s o m e t h i n g a b o u t t h m a t h e m a t i c a ld e s c r i p t i o n o l i g h t . L i g h t i a e l e c t r o m a g n e t i c w a v e w h i c h c a b d e s c r i b e d u s i n g c o m p l e x n u m b e r s . T h k e t c o n s t r u c t i n gt h p r o g r a m i k n o w i n g t h a t t h e f f e c t o F r a u n h o f e r d i f f r a c t i o ni d e s c r i b e d b F o u r i e r t r a n s f o r m a t i o n .

F o u r i e r t r a n s f o r m s a r t h e m s e l v e s t h e s u b j e c t o b o o k s . B r i e f l y ,w h a t F o u r i e r t r a n s f o r m s d i d i s t i n g u i s h t h f r e q u e n c y c o m p on e n t s i a v a r y i n g s i g n a l . ( C o n v e r s e l y , i n v e r s e F o u r i e r t r a n sf o r m s g i v e t h d o m a i n o s i g n a l w h o s e f r e q u e n c y c o m p o n e n t sa r k n o w n ) . T h p r o o f t h a t F o u r i e r t r a n s f o r m a t i o n s d e s c r i b eF r a u n h o f e r d i f f r a c t i o n a n t h a t t h e y c a b u s e d a d e s c r i b e dh e r e t g e n e r a t e h o l o g r a m s g o e s b e y o n d t h s c o p e o t h i s a r t i c l e .F o r t h o s e i n t e r e s t e d , t h p r o o f m a b f o u n d i a p a p e r b L o h m a n n a n P a r i s i A p p l i e d O p t i c s , V o l . 6 N o 1 0 P g 1 7 3 9 .T h e s s e n t i a l t h i n g t k n o w i t h a t t h F o u r i e r t r a n s f o r m w i l lp r o v i d e t h i n f o r m a t i o n r e q u i r e d t t e l l u h o t p o s i t i o n o u s l i t s t m a k e t h d i f f r a c t e d l i g h t h i t t h s c r e e n a t h r i g h t p h a s ea n h o b i t m a k e t h s l i t s s t h a t t h l i g h t r e a c h e s t h s c r e e nw i t h t h r i g h t a m p l i t u d e .

M e t h o d

T m a k e t h s l i t s , p r i n t e r o p l o t t e r i u s e d t d r a w s m a l l b l a c kr e c t a n g l e s o p i e c e o p a p e r . W h e n t h i s p a g e i p h o t o g r a p h e d ,t h e b l a c k r e c t a n g l e s a r e c l e a r o t h n e g a t i v e a n w h a v e o u s l i t s . T h d e t a i l s o f t h p r o c e d u r e a r e a s f o l l o w s :

F i g u r e 2 T y p i c a l a p e r t u r e i c e l l . T h h e i g h t , h n e n c o d e s a m p l i t u d e i n f o r m a t i o n a n t h p o s i t i o n , C n e n c o d e s p h a s e i n f o r m a t i o n .

T h d e s i r e d i n p u t i m a g e i d r a w n o g r i d . T h i n p u t d a t a i a a r r a y o b i n a r y e l e m e n t s m a d e u b a s s i g n i n g a z e r o t a n p a r to t h g r i d w h i c h d o e s n ' t m a k e p a r t o t h i m a g e a n d o n t a n p a r t o t h g r i d w h i c h d o e s m a k e p a r t o t h i m a g e . T h i n p u t d a t a i t r a n s f o r m e d u s i n g a t w o - d i m e n s i o n a l c o m p l e xF o u r i e r t r a n s f o r m . T h c o e f f i c i e n t s o f t h t r a n s f o r m a r t h e nu s e d t c a l c u l a t e t h e i n f o r m a t i o n r e q u i r e d t m a k e p l o t o f s m a l lb l a c k r e c t a n g l e s o p a g e .

T m a k e t h p l o t , t h p a p e r i d i v i d e d i n t o e q u a l l y s p a c e d c e l l s .R e c t a n g u l a r a p e r t u r e s ( i . e . t h s l i t s ) a r d r a w n i n s i d e e a c h c e l l .E a c h a p e r t u r e h a t h r e e p a r a m e t e r s : i t h e i g h t , ' h j n m t ' , i t w i d t h , V a n i t c e n t r e w i t h r e s p e c t t t h c e n t r e o t h c e l l ,' c j n m t ' . T h s u b s c r i p t s , n m i n d i c a t e t w h i c h c e l l o t h p a g et h e a p e r t u r e b e l o n g s . F i g u r e 2 s h o w s o n o t h c e l l s a n a p e r t u r e . T h h e i g h t o t h a p e r t u r e i m a d e p r o p o r t i o n a l t t h c a l c u l a t e d a m p l i t u d e a n t h p o s i t i o n o t h e a p e r t u r e i m a d ep r o p o r t i o n a l t t h c a l c u l a t e d p h a s e .

W h e n t h p l o t i r e d u c e d d o w n o f i l m t o b e c o m e a h o l o g r a m ,a n m o n o c h r o m a t i c , c o h e r e n t l i g h t i s h o n e t h r o u g h , w g e F r a u n h o f e r d i f f r a c t i o n p a t t e r n w h i c h i r e c o n s t r u c t i o n o o u o r i g i n a l i n p u t i m a g e . T h h o l o g r a m i n o d o i n g t h e i n v e r s e o t h o r i g i n a l F o u r i e r t r a n s f o r m w h i c h w a p p l i e d t t h i n p u td a t a .

T h e P r o g r a m

T h f i r s t p a r t o t h p r o g r a m a s k s f o s o m e i n p u t . T h f i r s t o p t i o ni w h e t h e r o r n o t y o u w a n t t m a k e h o l o g r a m p l o t . A t h i s t i m e

s h o u l d p o i n t o u t h a t a s i d e f r o m p r o d u c i n g t h h o l o g r a m p l o tt h p r o g r a m a l s o h a t h f e a t u r e t h a t i c o n t i n u e s o a n w o r k sb a c k w a r d s , s t a r t i n g w i t h t h e f i n a l d a t a u s e d t c r e a t e t h p l o t , t r e c o n s t r u c t t h o r i g i n a l i n p u t i m a g e . T h i m a g e i t h e n d r a w nw i t h t h p r i n t e r u s i n g g r a y - s c a l e m a d e u f r o m t e n c h a r a c t e r sa v a i l a b l e f r o m t h C o m m o d o r e k e y b o a r d . f o u n d t h i s f e a t u r ev e r y u s e f u l f o c h e c k i n g m i n p u t d a t a , d e b u g g i n g t h p r o g r a m ,a n f o g e t t i n g q u a l i t a t i v e f e e l i n g f o t h i m a g e q u a l i t y m i g h te x p e c t w i t h o u t g o i n g t h r o u g h t h t r o u b l e o p h o t o g r a p h i n gp l o t . I y o s e l e c t t h e o p t i o n o n o d o i n g t h p l o t , y o s t i l l g e t h g r a y - s c a l e r e c o n s t r u c t e d i m a g e .

N e x t , y o a r a s k e d i y o u w a n t t k e e p t h p h a s e o t h e i n p u te l e m e n t s c o n s t a n t o i y o u w a n t t h e m r a n d o m i z e d ( b u t s t i l lb i n a r y ) . E x p l a n a t i o n : T h t w p a r t s o t h c o m p l e x i n p u t d a t ag i v e t h r e a l a n i m a g i n a r y c o m p o n e n t s o t h i n p u t w a v e . T h p h a s e i g i v e n b t h e a r c t a n o t h i m a g i n a r y p a r t o v e r t h r e a lp a r t . T h m a g n i t u d e i g i v e n b t h s q u a r e r o o t o t h s u o t h s q u a r e s o t h r e a l a n i m a g i n a r y p a r t s . T h u s t h i n p u t p h a s ec a b m a d e r a n d o m w h i l e k e e p i n g t h m a g n i t u d e c o n s t a n t s t h i n p u t r e m a i n s b i n a r y . I y o k e e p t h e i n p u t p h a s e s c o n s t a n t ,t h d y n a m i c r a n g e o t h t r a n s f o r m w i l l b q u i t e l a r g e , w i t hf e o t h e l e m e n t s d i s p r o p o r t i o n a t e l y l a r g e r t h a n m o s t . T h r e s u l t o t h i s w i l l b t h a t a f t e r n o r m a l i z a t i o n , m o s t o t h a m p l i t u d e s w i l l b s m a l l a n y o u r p l o t w i l l b m o s t l y o t i n yr e c t a n g l e s w h i c h i t u r n w i l l g i v e d i i m a g e . T h i s c a b o v e r c o m e s o m e w h a t b t r u n c a t i n g t h e l a r g e r c o e f f i c i e n t s a n i y o c h o o s e c o n s t a n t p h a s e i n p u t t h e p r o g r a m w i l l s c a n t h t r a n s f o r m a n h e l p y o d e c i d e h o m u c h t r u n c a t i o n y o u w a n t

T h T r a n s a c t o r 3 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 33: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 33/84

t d o I t ' s f u t t r t o p t i m i z e t h f i n a l i m a g e w i t h d i f f e r e n ta m o u n t s o t r u n c a t i o n u s i n g t h g r a y - s c a l e o u t p u t t m a k eq u a l i t a t i v e j u d g e m e n t s .

I y o u r a n d o m i z e t h p h a s e o t h i n p u t d a t a , t h d y n a m i c r a n g eo t h t r a n s f o r m w i l l b r e d u c e d a n t h d i s t r i b u t i o n o t h a m p l i t u d e s m o r e ' u n i f o r m . T h i s g i v e s t h b e s t f i n a l i m a g e .

A f t e r t h e s e d e c i s i o n s h a v e b e e n m a d e , t h m a t r i x w h i c h m a k e su t h i n p u t f i g u r e i r e a d . A c a n b e s e e n i t h l i s t i n g , t h o n e si t h 3 3 m a t r i x b e i n g r e a d f o r m t h i m a g e o " h a p p yf a c e " . T h i s d a t a i u s e d t i n p u t v a l u e s t t h a r r a y s A R ( D , E ) a n A I ( D , E ) w h i c h r e p r e s e n t t h e r e a l a n i m a g i n a r y c o m p o n e n t s o t h " h a p p y f a c e " w a v e f r o n t . T h c h o i c e o a i m p u t i m a g e m u s tb m a d e k e e p i n g i m i n d t h a t t h f i n a l i m a g e q u a l i t y i d e p e nd e n t o t h n u m b e r o s a m p l i n g p o i n t s u s e d t m a t h e m a t i c a l l yr e p r e s e n t t h e i n p u t w a v e ( i . e . t h n u m b e r o p o i n t s i t h g r i d o w h i c h t h o r i g i n a l f i g u r e w a d r a w n ) . T h m o r e p o i n t s a v a i l a b l e ,t h m o r e c o m p l e x t h f i g u r e c a b e h o w e v e r , t h f i g u r e s h o u l db s i m p l e e n o u g h s t h a t i c a b e a s i l y r e p r e s e n t e d w i t h i n t h eg i v e n m a t r i x s i z e .

T h e r e a r o t h e r r e s t r i c t i o n s a w e l l . S i n c e t h e r e s u l t s o s a m p l i n gf r o m t h g r i d h a v e t b r e a d i n t o o u c o m p u t e r , t h g r i d s i z e i l i m i t e d t a r r a y s w h i c h c a f i i n t o t h a v a i l a b l e c o m p u t e rm e m o r y . A l s o , t h F o u r i e r t r a n s f o r m i p e r f o r m e d u s i n g s c a l l e d F a s t F o u r i e r T r a n s f o r m a l g o r i t h m w h i c h r e q u i r e s t h a t t h m a t r i x d i m e n s i o n s m u s t b e m X n w h e r e a n d n a r a i n t e g r a lp o w e r o t w o . T h F a s t F o u r i e r T r a n s f o r m u s e d h e r e a d a p t e df r o m F O R T R A N l i s t i n g b D . E . J o n e s i p a p e r t h a t J o n e sw r o t e w h i l e a s t u d e n t a U n i v e r s i t y o T o r o n t o .

T h e s e a r t h c o n s i d e r a t i o n s w h i c h l e t a m a t r i x s i z e o f 3 3 a n " h a p p y f a c e " f i g u r e . O t h e r a p p r o p r i a t e i n p u t f i g u r e s f o t h i s s i z e m a t r i x c o u l d b l e t t e r s o t h a l p h a b e t , C h i n e s e c h a r a ct e r s , t h s y m b o l f o p e a c e , o r w h a t e v e r .

A f t e r t h F o u r i e r t r a n s f o r m h a b e e n c o m p l e t e d , t h c o e f f i c i e n t so t h e t r a n s f o r m a r u s e d t c a l c u l a t e a a m p l i t u d e a n d p h a s e f o e a c h c o m p o n e n t . T h a m p l i t u d e s a r t h e n s c a n n e d , a n t h l a r g e s t i u s e d t n o r m a l i z e t h a m p l i t u d e s t b e t w e e n z e r o a n o n ( u n l e s s a c o n s t a n t p h a s e w a u s e d i t h i n p u t d a t a , i nw h i c h c a s e t h e r e i a o p t i o n t n o r m a l i z e w i t h s m a l l e rn u m b e r a n t r u n c a t e t h e l a r g e r a m p l i t u d e s t o n e ) . W n o h a v e t h e r e q u i r e d i n f o r m a t i o n t m a k e t h p l o t .

w i l l d e s c r i b e t h e p l o t r o u t i n e i s o m e d e t a i l s i n c e t h i s i t h p a r to t h p r o g r a m t h a t y o w i l l p r o b a b l y b m o d i f y i n g s h o u l d y o w a n t t f o l l o w t h r o u g h o t h i s a r t i c l e a n t r t h i s o y o u r o w c o m p u t e r . T h w a y o c h o o s e t m a k e y o u r p l o t w i l l a f f e c t t h f i n a l i m a g e q u a l i t y s i t ' s b e s t t h a v e s o m e g u i d e l i n e s b e f o r es t a r t i n g . F i r s t w i l l d e s c r i b e h o t h p l o t r o u t i n e l i s t e d h e r ew o r k s , t h e n w i l l d i s c u s s w h a t t c o n s i d e r s h o u l d y o b u s i n gp l o t t e r .

p r o d u c e d t h p l o t o C o m m o d o r e 1 5 2 6 p r i n t e r . E a c h c e l l i t w p r i n t e r c h a r a c t e r s ( 1 6 p i x e l s ) w i d e a n d t w o p r i n t e r c h a r a ct e r s ( 1 p i x e l s ) t a l l . T h r e c t a n g l e s t b p l a c e d i n s i d e t h c e l l sa r f o u r p i x e l s w i d e . A v o i d i n g t h e c o m p l i c a t i o n o h a v i n g r e c t a n

g l e s o v e r l a p a c e l l e d g e s , t h i s a l l o w s f o m a x i m u m o 1 h o r i z o n t a l p o s i t i o n s ( q u a n t i z e d p h a s e v a l u e s ) a n n i n e r e c t a n g l eh e i g h t s ( q u a n t i z e d a m p l i t u d e v a l u e s ) i y o c o u n t z e r o a o n o t h h e i g h t s .

T p l o t s p e c i f i c p i x e l s w i t h a 1 5 2 6 p r i n t e r , y o u m u s t d e f i n ec u s t o m c h a r a c t e r s . T h u s t m a k e t h p l o t , f i r s t s e u a a r r a y ,C H $ ( I , J ) , w h i c h c o n t a i n e d a l t h d i f f e r e n t c h a r a c t e r s w o u l dn e e d t m a k e t h a p e r t u r e s o v a r y i n g h e i g h t s a n p o s i t i o n sw i t h i n c e l l . T h l a r g e n u m b e r o c h a r a c t e r s r e q u i r e d , a n t h c o m p l e x i t y o t h p l o t r o u t i n e , i m a i n l y d u t t h f a c t t h a t e a c hc e l l i m a d e u o f o u r ( 2 p r i n t e r c h a r a c t e r s .

I t h t w o - d i m e n s i o n a l a r r a y , C H ( I , J ) , t h f i r s t i n d i c i a k e e p st r a c k o c h a r a c t e r s o d i f f e r e n t h o r i z o n t a l p o s i t i o n s w h i l e t h s e c o n d k e e p s t r a c k o c h a r a c t e r s o d i f f e r e n t h e i g h t . T h c o r r e c th e i g h t i n d i c i a i f o u n d b m u l t i p l y i n g t h e n o r m a l i z e d a m p l i t u d eb e i g h t ( s i n c e o t h 1 5 2 6 p r i n t e r , c h a r a c t e r s a r e e i g h t p i x e l st a l l ) a n d e t e r m i n i n g t w h i c h o t h n i n e q u a n t i z e d v a l u e s t h ea m p l i t u d e b e l o n g s . s i m i l a r p r o c e s s i u s e d t o f i n d t h h o r i z o nt a i n d i c i a e x c e p t t h a t n o t h p h a s e i u s e d t f i n d t h o f f s e tf r o m t h m i d d l e o t h c e l l .

I t a k e s t w r o w s o c h a r a c t e r s t m a k e o n r o o r e c t a n g u l a ra p e r t u r e s . F i r s t t h e t o p h a l f o f r o o a p e r t u r e s i p r i n t e d , t h e nt h b o t t o m . T h p l o t r o u t i n e k e e p s t r a c k o w h i c h h a l f i c u r r e n t l y b e i n g p r i n t e d a n i i t ' s t h b o t t o m h a l f , t h e c h a r a c t e rh e i g h t i n d i c i a i s h i f t e d t o p r i n t c h a r a c t e r s o t h p r o p e r s i z ew h i c h m e e t t h b o t t o m o t h e t o p h a l f o f t h r e c t a n g l e a n g r o wd o w n w a r d s . Y o u m a a l s o n o t e t h a t t h 1 5 2 6 p r i n t e r c a n h a n d l eo n l y o n e c u s t o m c h a r a c t e r a a t i m e a n h a o n l i n e b u f f e r .T h i s e x p l a i n s t h e n e e d f o a l t h t a b b i n g a n c a r r i a g e r e t u r n s .

B n o s o m e o y o m u s t b e t h i n k i n g t h a t t h e r e m u s t b b e t t e rw a y . I ' s u r e t h e r e i s F o e x a m p l e , t h o s e w h h a v e s y s t e m st h a t c a p r o v i d e t h e r e q u i r e d r e s o l u t i o n m a b a b l e t d i n e a t l y o h i - r e s s c r e e n w h i c h i t h e n s i m p l y d u m p e d o p r i n t e r o t h o s e w i t h p l o t t e r s m a h a v e a n o t h e r w a y . A t a n r a t e ,h e r e a r s o m e g u i d e l i n e s w h i c h c a n b e u s e d w h e n s e t t i n g u p l o t r o u t i n e . T h g u i d e l i n e s w e r e d r a w n b r e a d i n g t h p r e v io u s l y m e n t i o n e d p a p e r b L o h m a n a n P a r i s a n f r o m p a p e rb G a b e l a n L i i A p p l i e d O p t i c s , V o l . 9 N o 5 P g 1 1 8 0 .

T h i m a g e b r i g h t n e s s i m a x i m i z e d w h e n t h r e l a t i v e d o w i d t hi o n h a l f t h c e l l w i d t h a n t h f u l l w i d t h o t h c e l l i u s e d f o d o p o s i t i o n i n g . I y o u s t h f u l l c e l l w i d t h , y o m u s t w r i t ep l o t r o u t i n e w h i c h w i l l a l l o w t h e d o t s t o v e r l a p i n t o n e i g h b o u ri n c e l l s . T h e r e w i l l b s o m e e r r o r i t h o d c a s e s w h e r e t w od o t s o v e r l a p b e c a u s e t h e s e a r a r e a s w h i c h s h o u l d b d o u b l yt r a n s m i s s i v e . I n p r a c t i s e t h o u g h , t h e r e w o n ' t b e n o u g h o t h e s ec a s e s t w o r r y a b o u t . L p h m a n a n P a r i s a l s o s h o w e d h o w e v e r ,t h a t i m a g e b r i g h t n e s s r a n g e i n c r e a s e s w i t h i n c r e a s i n g d o t w i d t h .T h e y s u g g e s t t h a t g o o d b a l a n c e b e t w e e n i m a g e b r i g h t n e s s a n u n i f o r m i t y m i g h t b a c h i e v e d w i t h a d o w i d t h o o n t h i r d t h c e l l w i d t h .

G a b e l a n L i u d i s c u s s m i n i m i z i n g i m a g e r e c o n s t r u c t i o n e r r o r b o p t i m i z i n g t h n u m b e r o s a m p l e p o i n t s ( c e l l s o t h p l o t ) a n q u a n t i z e d s t e p s a v a i l a b l e w i t h i n c e l l g i v e n t h e t o t a l n u m b e r o

T h T r a n s a c t o r 3 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 34: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 34/84

s t e p s a v a i l a b l e o y o u r p l o t t e r . I t u r n s p u t h a t t h p l o t w a a b l et d o o n m p r i n t e r i w h i c h h a u t 1 s t e p s w i t h i n e a c h o 3 3 c e l l s w a c l o s e t b e i n g a o p t i m u m a r r a n g e m e n t .

H o f a t h i m a g e s e n d u p b e i n g s p a c e d f r o m t h o p t i c a x i s c a b c o n t r o l l e d b h o m u c h o t h c e l l w i d t h i u s e d f o a p e r t u r ep o s i t i o n i n g . T h s m a l l e r t h e a m o u n t u s e d , t h e f a r t h e r a w a y f r o mt h o p t i c a x i s t h i m a g e s w i l l b e

S o m e o t h e r t h i n g s t k e e p i m i n d a r t h a t a m p l i t u d e e r r o r s( a p e r t u r e h e i g h t ) a r e n ' t a i m p o r t a n t a p h a s e e r r o r s ( a p e r t u r ep o s i t i o n ) b e c a u s e t h e y d n o d e v i a t e t h l i g h t r a y s a d p h a s ee r r o r s . A l s o , i y o u r p r i n t e r o p l o t t e r i l i m i t e d , m o r e c e l l s o f i n e r q u a n t i z a t i o n c a n b e h a b d o i n g t h p l o t i n s e v e r a l p a r t sw h i c h c a l a t e r b p a s t e d t o g e t h e r b e f o r e t h e r e d u c t i o n .

R u n n i n g , R e d u c t i o n , R e c o n s t r u c t i o n

O n c e t h p r o g r a m s t a r t s r u n n i n g , b p r e p a r e d t w a i t . I t a k e so v e r a h o u r f o t h p r o g r a m t r u c o m p l e t e l y . p u i s o m ep r i n t s t a t e m e n t s t t h m o n i t o r s y o c a f o l l o w a l o n g a n s e w h e r e t h p r o g r a m i a a n g i v e n t i m e .

T h o u t p u t p l o t m u s t b e r e d u c e d s t h a t t h d i s t a n c e b e t w e e na p e r t u r e s i i t h o r d e r o t e n s o m i c r o n s . T h i s m e a n s t h a t f o 3 3 p l o t w h i c h i 1 c m r e d u c t i o n f a c t o r o f a b o u t 1 0 0 i g o o d .

T h r e d u c t i o n i d o n e p h o t o g r a p h i c a l l y . N o n e o t h a u t h o r s o t h p a p e r s I ' v e r e a d s e e m t t h i n k t h a t t h e r e ' s a n c h a l l e n g e t t h i s p r o c e s s a n g i v e n d e t a i l s o h o i t ' s d o n e . I w i t h t h e h e l po f r i e n d w h o ' s i n t o p h o t o g r a p h y , t r i e d a f e w t i m e s w i t h v a r i o u sl o g r a i n , h i g h c o n t r a s t f i l m s b u w c o u l d n ' t s e e m t g e t t h ee x p o s u r e r i g h t . E i t h e r t h e a p e r t u r e s w e r e f i l l e d i o r t h e b a c kg r o u n d w a t o l i g h t . I a n y b o d y o u t h e r e h a s o m e s u g g e s t i o n s ,I ' l o v e t h e a r t h e m . ( M m a i l i n g a d d r e s s i P B o 5 1 0 6 , P o r tE l g i n , O n t a r i o , N O 2 C 0 . ) f i n a l l y s e n t m p l o t s t o m i c r o f i c h -i n c o m p a n y w h r e d u c e d t h e m f o $ 2 0 . 0 0 ( s e e b e l o w ) . E v e nt h e b e s t t h e y c o u l d d o w a s r e d u c t i o n f a c t o r o f 7 9 .

T h t h r e e t i n y w h i t e s q u a r e s ( a c t u a l s i z e ) a t h e c e n t e ro t h f i l m a r t h r e e s e p a r a t e h o l o g r a m p l o t s .

c a n b e f o u n d i t h l i g h t c o m i n g f r o m l a s e r . W h a t ! ? Y o d o n ' to w l a s e r ? N o s u r p r i s i n g , b u d o n ' t b d i s h e a r t e n e d . M o s th i g h s c h o o l s t h e s e d a y s h a v e r e l a t i v e l y i n e x p e n s i v e h e l i u mn e o n l a s e r s a n i t ' s b e e n m e x p e r i e n c e t h a t p h y s i c s t e a c h e r sa r e d e l i g h t e d t l e y o u b o r r o w t h e i r l a s e r p r o v i d e d y o l e t h e ms e w h a t y o u ' v e d o n e . I y o u ' r e s t u d e n t , m a k e a c o m p u t e r -g e n e r a t e d h o l o g r a m , t a k e i i n t o c l a s s a n k n o c k y o u r t e a c h e r ' ss o c k s o f f .

1 c m p l o t r e d u c e d b f a c t o r o 1 0 e n d s u p a 1 . m m h o l o g r a m . T h i s i c o n v e n i e n t b e c a u s e i t ' s a b o u t t h s a m e a t h b e a m d i a m e t e r o a i n e x p e n s i v e l a s e r . W h e n t h l a s e r b e a m i s h o n e t h r o u g h t h h o l o g r a m , i m a g e s o t h e i n p u t w i l l a p p e a r o a s c r e e n p l a c e d o t h o t h e r s i d e . T h i m a g e s c l o s e s t t t h o p t i ca x i s a r f i r s t o r d e r d i f f r a c t i o n , t h n e x t s e o i m a g e s a r s e c o n do r d e r , a n s o n

R e s u l t s

F i g u r e s h o w s t y p i c a l r e s u l t o f r u n n i n g t h p r o g r a m . T h i n p u tw a b i n a r y d a t a t h a t f o r m e d " h a p p y f a c e " . F i g u r e 3 ( a ) i t h p l o t p r o d u c e d b 1 5 2 6 p r i n t e r . F i g u r e 3 ( b ) i t h g r a y - s c a l er e c o n s t r u c t i o n o t h i m a g e , a l s o d o n e o t h e 1 5 2 6 . F i g u r e 3 ( c ) i

p h o t o g r a p h o t h d i f f r a c t i o n p a t t e r n s e e n w h e n l a s e r b e a mi s h o n e t h r o u g h t h h o l o g r a m . N o t i c e t h e d o t s w h i c h a p p e a r i t h g r a y - s c a l e p i c t u r e a n t h e r e c o n s t r u c t e d i m a g e . T h e s e d o t sa r f r o m F o u r i e r t r a n s f o r m i n g " s q u a r e " d a t a s u c h a t h q u a nt i z e d d a t a w u s t m a k e o u p l o t .

I I 1 • I I I I I I * 1 • • • I . .

I I I * 1 I 1 I • I I I

• I I I I I 1 .

1 1 I 1 I I I I - - ' I ' l l I I I I I I I I l I I ' l l * ' I I I l I I I I I 1

I I 1 * 1 1 I I I I I . I . I I I I - I 1 1 1 1

I • I I • I *

I I l l l I t • I I I 1 I I I • I I t | . . . |

I I I I I * I I * I * i I | | ' I I I t | | I t t | . | i | • . | I I I | 1 * ' 1 * 1 1 * 1 M . | I I I I . i . | |

I I I I . . | . I I I I I > t I i i I | | •

' * I I I • | | | . | ' 1 * 1 1 | I . . | ,

I I I • I * | | i | | * I I I I I • I | I | I I . I . . . I | .

• ' • I * * I I | | I | • I t i l l | . I l I • I • I I I I . I I

I • • l | I I | I i l I • I I I ' • I | 1 1 | '

I I I • I * I 1 • I I I i

. .

i •

1 * 1 1 1 1 | i i • . .

I I

I o r d e r t r e c o n s t r u c t t h e i m a g e w i t h t h e h o l o g r a m w n e e dl i g h t s o u r c e w h i c h c a d i s p l a y i n t e r f e r e n c e e f f e c t s . T h i s m e a n st h a t i m u s t b e m o n o c h r o m a t i c a n d c o h e r e n t . T h e s e p r o p e r t i e s

F i g u r e 3 ( a ) : H o l o g r a m p l o t f r o m 1 5 2 6 p r i n t e r ( 5 4 % o a c t u a l s i z e ) . R e d u c e d p h o t o g r a p h i c a l l y , t h a b o v e w i l lb e c o m e d i f f r a c t i o n g r a t i n g w h i c h w i l l f o r m i m a g e s o u h a p p y f a c e s " .

T h T r a n s a c t o r 3 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 35: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 35/84

I

F i g u r e 3 ( b ) : G r a y s c a l e r e c o n s t r u c t i o n o i m a g e c o r r e s p o n d i n gt F i g u r e 3 ( a ) .

F i g u r e 4 ( a ) : G r a y s c a l e r e c o n s t r u c t i o n o a n i m a g e t h a tu s e d a c o n s t a n t i n p u t p h a s e a n n t r u n c a t i o n o t h t r a n s f o r m e d d a t a .

F i g u r e 3 ( c ) : P h o t o g r a p h o t h a c t u a l d i f f r a c t i o n p a t t e r n p r d u c e d b y s h i n i n g l a s e r b e a m t h r o u g h t h p h o t o - r e d u c e d p l o to f i l m .

F i g u r e s h o w s g r a y - s c a l e p i c t u r e s w h i c h s h o w t h e f f e c t o u s i n gc o n s t a n t i n p u t p h a s e a n t r u n c a t i n g t h e t r a n s f o r m e d d a t a . I

F i g u r e 4 ( a ) n t r u n c a t i o n w a p e r f o r m e d a n a c a b s e e n , t h p r e d i c t e d r e c o n s t r u c t e d i m a g e w i l l b o f r e l a t i v e l y p o o r q u a l i t y .I F i g u r e 4 ( b ) t h f e d o m i n a n t t r a n s f o r m a m p l i t u d e c o e f f i c i e n t sw e r e t r u n c a t e d a n t h g r a y - s c a l e p i c t u r e p r e d i c t s m u c h b e t t e ri m a g e .

F i g u r e 4 ( b ) : G r a y s c a l e r e c o n s t r u c t i o n o a i m a g e t h a t h a c o n s t a n t i n p u t p h a s e . T h t r a n s f o r m e d d a t a w a t r u n c a t e d

t l i m i t t h e f f e c t o t h d o m i n a n t c o e f f i c i e n t s w h i c h r e s u l tf r o m t r a n s f o r m i n g s q u a r e d a t a .

T h e r e a r o t h e r m e t h o d s o m a k i n g c o m p u t e r g e n e r a t e d h o l og r a m s . S o m e r e c o r d p h a s e i n f o r m a t i o n o f i l m b v a r y i n g t h e m u l s i o n t h i c k n e s s . T h b i n a r y h o l o g r a m s d e s c r i b e d h e r e a r t h e a s i e s t t m a k e , w i t h t h e r e q u i r e d c o m p u t e r h a r d w a r ep r o b a b l y a l r e a d y b e i n g a v a i l a b l e t o t h m a j o r i t y o p e r s o n s w h h a v e r e a d t h i s a r t i c l e .

T h T r a n s a c t o r 3 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 36: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 36/84

Page 37: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 37/84

B C H N K N O C B G C A H F J K N A B C P

A D K D 0 H H A A J K L B F J N M G C P P E D P G 0 F E P A J M D 1

N E O J E

H C A F J

1 2 9 0 g o t o 1 3 6 01 3 0 0 x ( j 2 ) r 1 + l 31 3 1 0 y ( j 2 ) i 1 - r 31 3 2 0 x ( j 1 ) r 0 - r 21 3 3 0 y ( j 1 ) i 0 - i 21 3 4 0 x ( j 3 ) r 1 - i 31 3 5 0 y ( j 3 ) i 1 + r 31 3 6 0 n e x t i , j , k1 3 9 0 i I i n t ( l g / 2 ) * 2 t h e n 1 5 0 01 4 0 0 f o t o s t e p1 4 1 0 r 0 x ( i ) x ( 1 1 4 2 0 r 1 = x ( i ) - x ( i 1 1 4 3 0 i 0 y ( i ) y ( 1 1 4 4 0 i 1 = y ( i ) - y ( i 1 1 4 5 0 x ( i ) r 1 4 6 0 y ( i ) i 1 4 7 0 x ( i 1 r 1 4 8 0 y ( i 1 i 1 4 9 0 n e x t1 5 0 0 s ( 1 3 ) n / 1 5 1 0 u ( 1 3 )1 5 2 0 f o t 1 1 5 3 0 j 1 4 - k1 5 4 0 s ©1 5 5 0 u © s ( 1 1 5 6 0 i s ( + ) > t h e n s © i n t ( s ( j + ) / 2 )1 5 7 0 n e x t1 5 8 0 a l s ( 2 )1 5 9 0 j 1 6 0 0 a = 1 : = a : c = b : d c : d : 1 6 6 0 f o t o u ( 7 ) s t e p s ( 7 )1 6 7 0 f o t o u ( 8 ) s t e p s ( 8 )1 6 8 0 f o t u ( 9 ) s t e p s ( 9 )1 6 9 0 f o t u ( 1 0 ) s t e p s ( 1 0 )1 7 0 0 f o k = t u ( 1 1 ) s t e p s ( 1 1 )1 7 1 0 f o r l k t o u ( 1 2 ) s t e p s ( 1 2 )1 7 2 0 f o t u ( 1 3 ) s t e p s ( 1 3 )1 7 3 0 j j = j j1 7 4 0 i j j t h e n 1 8 1 01 7 5 0 t = x ( j j )1 7 6 0 x ( j j ) x ( m )1 7 7 0 x ( m )1 7 8 0 t = y ( j j )1 7 9 0 y ( j j ) y ( m )1 8 0 0 y ( m )1 8 1 0 :1 8 2 0 n e x t m J , k , j , i , h , g1 8 9 0 f = f s ( 6 )1 9 0 0 i f u ( 6 ) t h e n 1 6 6 01 9 1 0 e s ( 5 )1 9 2 0 i e < u ( 5 ) t h e n 1 6 5 01 9 3 0 d = s ( 4 )1 9 4 0 i d < = u ( 4 ) t h e n 1 6 4 01 9 5 0 c = s ( 3 )1 9 6 0 i c u ( s ) t h e n 1 6 3 01 9 7 0 b s ( 2 )1 9 8 0 i b < u ( 2 ) t h e n 1 6 2 01 9 9 0 a2 0 0 0 i a a t h e n 1 6 1 02 0 1 0 f o s t o ( n - 2 ) / 22 0 2 0 b e + - s l . f c s + 2 0 3 0 t x x ( f c ) : t y y ( f c )2 0 4 0 x ( f c ) x ( b c ) : y ( f c ) y ( b c )2 0 5 0 x ( b c ) = t x : y ( b c ) t 2 0 6 0 n e x t s

F I F

L N E E N P

M M F

G L D C K G C K K P H K F J B K M K B C D J

G I

F B J

I L M E H E B L F P B L D J P B

A N H O L N M J D K

T h T r a n s a c t o r 3

2 0 7 0 i i t > 0 t h e n r e t u r n2 0 8 0 f o t 2 0 9 0 x ( i ) x ( i ) / n2 1 0 0 y ( i ) - y ( i ) / n2 1 1 0 n e x t i2 1 2 0 r e t u r n2 1 3 0 r e c o n v e r t i n t o a m p l i t u d e a n g l e2 1 4 0 p r i n t " . . . f i n d i n g a m p l i t u d e a n g l e 1 12 1 5 0 f o r d t o 2 1 6 0 f o t o 2 1 7 0 a p s q r ( a r ( d , e ) * a r ( d , e ) a i ( d , e ) * a i ( d , e ) )2 1 8 0 i a t h e n 2 3 3 02 1 9 0 i a r ( d , e ) < > 0 t h e n 2 2 3 02 2 0 0 i a i ( d , e ) < 0 t h e n p - r r / 22 2 1 0 i a i ( d , e ) > 0 t h e n p a = n / 22 2 2 0 g o t o 2 3 2 02 2 3 0 i a i ( d , e ) < > 0 t h e n 2 2 7 02 2 4 0 i a r ( d , e ) < 0 t h e n p a = n2 2 5 0 i f a r ( d , e ) > 0 t h e n p a2 2 6 0 g o t o 2 3 2 02 2 7 0 p a t n ( a i ( d , e ) / a r ( d , e ) )2 2 8 0 i a r ( d , e ) > 0 a n a i ( d , e ) > 0 t h e n p p 2 2 9 0 i a r ( d , e ) < 0 a n a i ( d , e ) > 0 t h e n p a = n p 2 3 0 0 i a r ( d , e ) < 0 a n a i ( d , e ) < 0 t h e n p p a - n2 3 1 0 i a r ( d , e ) > 0 a n a i ( d , e ) < 0 t h e n p a = p a2 3 2 0 a r ( d , e ) a p a i ( d , e ) p 2 3 3 0 n e x t e , 2 3 5 0 r e t u r n2 3 6 0 :2 3 7 0 r e a m p l i t u d e n o r m a l i z a t i o n r o u t i n e2 3 8 0 r e f i n d l a r g e s t a m p l i t u d e2 3 9 0 l a ( 1 , 1 )2 4 0 0 f o t o 2 4 1 0 f o t o 2 4 2 0 i f a r ( d , e ) > l a t h e n l a a r ( d , e )2 4 3 0 n e x t e , d2 4 5 0 i i p " r t h e n 2 8 2 02 4 6 0 p r i n t ' t h e l a r g e s t a m p l i t u d e i s " ; l a2 4 7 0 r e m c h e c k a m p l i t u d e d i s t r i b u t i o n2 4 8 0 p 0 p 0 p 0 p 0 p = 2 4 9 0 n . 8 * l a : n 6 . 6 * l a : n 4 . 4 * l a : n 2 . 2 * l a : n 1 . * l 2 5 0 0 p r i n t "2 5 1 0 f o t o 2 5 2 0 f o t o 2 5 3 0 i a r ( d , e ) < n t h e n p p + 2 5 4 0 i a r ( d , e ) < n t h e n p p + 2 5 5 0 i a r ( d , e ) < n t h e n p p + 2 5 6 0 i a r ( d , e ) < n t h e n p p + 2 5 7 0 i a r ( d , e ) < n t h e n p p + 2 5 8 0 n e x t e , 2 6 0 0 p i n t ( p 8 / 1 0 2 4 * 1 0 0 ) : p 6 i n t ( p 6 / 1 0 2 4 * 1 0 0 ): p i n t ( p 4 / 1 0 2 4 * 1 0 0 )2 6 1 0 p i n t ( p 2 / 1 0 2 4 * 1 0 0 ) : p 1 i n t ( p 1 / 1 0 2 4 * 1 0 0 )2 6 2 0 p r i n t n 8 O ° / o o f t h m a x . a m i s " ; n 82 6 3 0 p r i n t p 8 ; " ° / o o a m p ' s a r e q u a l o r s m a l l e r "2 6 4 0 p r i n t "2 6 5 0 p r i n t " 6 0 % o t h m a x . a m i s n ; n 62 6 6 0 p r i n t p 6 ; " ° / o o a m p ' s a r e q u a l o r s m a l l e r "2 6 7 0 p r i n t "2 6 8 0 p r i n t " 4 O ° / o o t h m a x . a m i s " ; n 42 6 9 0 p r i n t p 4 ; " ° / o o f a m p ' s a r e q u a l o s m a l l e r "2 7 0 0 p r i n t "2 7 1 0 p r i n t " 2 O ° / o o f t h m a x . a m i s " ; n 22 7 2 0 p r i n t p 2 ; " ° / o o f a m p ' s a r e q u a l o r s m a l l e r "2 7 3 0 p r i n t "

J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 38: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 38/84

P N

1 J M D A C C H E E

D M O A E D E P D

K D G C H P

M M P D L K

I N M L K L

O O O B D

L

D L L

E N

D A N N F N I

E L E

2 7 4 0 p r i n t i 0 o t h m a x . a m i s " ; n 12 7 5 0 p r i n t p i ; " % o a m p ' s a r e q u a l o r s m a l l e r "2 7 6 0 p r i n t "2 7 7 0 p r i n f t i m e i " ; t i $2 7 8 0 p r i n t "2 7 9 0 i n p u t " w h a t n o d y o u w a n t t n o r m a l i z e t o B ; n l2 8 0 0 p r i n t "2 8 1 0 i n p u f w h i c h m e a n s w h a t ° / o d a t a t r u n c a t e d " ; p t2 8 2 0 i f i p $ r t h e n n l l 2 8 3 0 f o t o 2 8 4 0 f o t o 2 8 5 0 a r ( d , e ) a r ( d , e ) / n l : i a r ( d , e ) > 1 t h e n a r ( d , e )2 8 6 0 n e x t e , d2 8 8 0 r e t u r n2 8 9 0 :2 9 0 0 r e m p l o t r o u t i n e2 9 1 0 r e r e a d i p l o t c h a r a c t e r s2 9 2 0 i h p " n t h e n 3 7 2 02 9 3 0 p r i n t " . . . d e f i n i n g p l o t c h a r a c t e r s " -2 9 4 0 f o t 8 : e ( i ) 2 t i - 1 : e ( i 8 e ( i ) * 2 t ( 8 - i ) : n e x t2 9 5 0 f o t 1 1 f o t 1 5 f o t 2 9 6 0 c 0 i k < ( 1 3 - i ) a n k > ( 8 - i ) t h e n c e f f l2 9 7 0 c h $ ( i , j ) c h $ ( i , j ) c h r $ ( c h )2 9 8 0 n e x t k , j , i3 7 1 0 :3 7 2 0 o p e n 2 , 4 , 53 7 3 0 o p e n 6 , 4 > 6 : p r i n t # 6 , c h r $ ( 2 1 )3 7 4 0 r e m a i n p l o t t i n g l o o p3 7 5 0 t 3 7 6 0 n 2 i h p d n t h e n n 3 7 7 0 f o t 3 7 8 0 f o t o n f3 7 9 0 f o t o 3 8 0 0 r e m d e t e r m i n e w h i c h c h a r a c t e r3 8 1 0 r e f i n d c h a r a c t e r h e i g h t3 8 2 0 h t 8 * a r ( d , e )3 8 3 0 d h h t - i n t ( h t )3 8 4 0 i d h < . 1 2 5 / 2 t h e n h i n t ( h t ) : g o t o 3 8 6 03 8 5 0 h t i n t ( h t )3 8 6 0 i n t h e n a r ( d , e ) h t / 8 * n l3 8 7 0 r e m f i n d p h a s e3 8 8 0 c p p q * a i ( d , e ) / ( 2 * n )3 8 9 0 q p i n t ( p q / 2 )3 9 0 0 i f a b s ( c p ) - i n t ( a b s ( c p ) ) > . 5 t h e n 3 9 5 03 9 1 0 i c p < 0 t h e n c i n t ( c p ) : i f n t h e n

a i ( d , e ) ( c 1 ) * T i / q p3 9 2 0 i c p > = t h e n c i n t ( c p ) + : i f f n t h e n

a i ( d , e ) ( c p - 1 ) * 7 i / q p3 9 3 0 i h p " n " t h e n 4 2 9 03 9 4 0 g o t o 3 9 8 03 9 5 0 i c p < 0 t h e n c i n t ( c p ) - 1 : i n t h e na i ( d , e ) ( c 1 ) * 7 i / q p3 9 6 0 i c p > 0 t h e n c p i n t ( c p ) 2 : i f n t h e n

a i ( d > e ) ( c p - 1 ) * T i / q p3 9 7 0 i h p " n t h e n 4 2 9 03 9 8 0 i f < > 1 t h e n 4 2 3 03 9 9 0 i h t h e n p r i n t # 4 , " [ 2 s p c s ] " ; c h r $ ( 1 4 1 ) ; : g o t o 4 2 6 04 0 0 0 i a b s ( c p ) > 2 t h e n 4 1 3 04 0 1 0 i c p > - 2 t h e n 4 0 5 04 0 2 0 p r i n t # 2 , c h $ ( 3 , h t ) : p r i n t # 4 , c h r $ ( 2 5 4 ) ; c h r $ ( 1 4 1 ) ;4 0 3 0 t b = t b + : p r i n t # 2 , c h $ ( 1 1 , h t ) : p r i n t # 4 , t a b ( t b ) ;

c h r $ ( 2 5 4 ) ; c h r $ ( 1 4 1 ) ;4 0 4 0 g o t o 4 2 6 04 0 5 0 i c p > 1 t h e n 4 0 9 04 0 6 0 p r i n t # 2 , c h $ ( 2 , h t ) : p r i n t # 4 , c h r $ ( 2 5 4 ) ; c h r $ ( 1 4 1 ) ;

T h T r a n s a c t o r 3

O M B J

D E K P O K

G B L H M

I C A C

N F F P M O H E K P P H A C F E F B M G B I O

A D D K K H L P

O J L

J F N D L

I

4 0 7 0 t b = t b + : p r i n t # 2 , c h $ ( 1 0 , h t ) : p r i n t # 4 , t a b ( t b ) ;c h r $ ( 2 5 4 ) ; c h r $ ( 1 4 1 ) ;

4 0 8 0 g o t o 4 2 6 04 0 9 0 p r i n t # 2 , c h $ ( 1 , h t ) : p r i n t # 4 , c h r $ ( 2 5 4 ) ; c h r $ ( 1 4 1 ) ;4 1 0 0 t t + : p r i n t # 2 , c h $ ( 9 , h t ) : p r i n t # 4 , t a b ( t b ) ;

c h r $ ( 2 5 4 ) ; c h r $ ( 1 4 1 ) ;4 1 1 0 t b = t b + : p r i n t # 2 , c h $ ( 9 , h t ) : p r i n t # 4 , t a b ( t b ) ;

c h r $ ( 2 5 4 ) ; c h r $ ( 1 4 1 ) ;4 1 2 0 g o t o 4 2 6 04 1 3 0 i c p < 0 t h e n 4 1 8 04 1 4 0 c p c + 1 - c p * 24 1 5 0 p r i n t # 4 , " [ 1 s p c ] " ; c h r $ ( 1 4 1 ) ;4 1 6 0 t t + : p r i n t # 2 l c h $ ( c p l h t ) : p r i n t # 4 , t a b ( t b ) ;

c h r $ ( 2 5 4 ) ; c h r $ ( 1 4 1 ) ;4 1 7 0 g o t o 4 2 6 04 1 8 0 i c p > 0 t h e n 4 2 3 04 1 9 0 c p = a b s ( c p )4 2 0 0 p r i n t # 2 , c h $ ( c p , h t ) : p r i n t # 4 , c h r $ ( 2 5 4 ) ; c h r $ ( 1 4 1 ) ;4 2 1 0 t b = t b + : p r i n t # 4 , t a b ( t b ) ; " [ 1 s p c ] " ; c h r $ ( 1 4 1 ) ;4 2 2 0 g o t o 4 2 6 04 2 3 0 i h t h e n 3 9 9 04 2 4 0 i f h t < 8 t h e n h t h 4 2 5 0 g o t o 3 9 9 04 2 6 0 i t h e n p r i n t # 4 , c h r $ ( 1 4 1 ) ; c h r $ ( 1 3 ) ;4 2 7 0 t 2 * e : i f t h e n t 4 2 8 0 i f ' e O n t h e n p r i n t # 4 , t a b ( t b ) ;4 2 9 0 n e x t e , f , d4 3 2 0 r e t u r n4 3 3 0 :

• 4 3 4 0 r e f i n d r e a l a n i m a g i n a r y c o m p o n e n t s f r o mt r u n c a t e d q u a n t i z e d d a t a

4 3 5 0 f o t n f o t 4 3 7 0 a p a r ( d , e )4 3 8 0 a r ( d . e ) a p * c o s ( a i ( d , e ) )4 3 9 0 a i ( d . e ) a p * s i n ( a i ( d , e ) )4 4 0 0 n e x t e , d4 4 2 0 r e t u r n4 4 3 0 :4 4 4 0 r e g r a y s c a l e p i c t u r e r o u t i n e4 4 5 0 p r i n t # 4 , " [ 1 s p c ] 1 14 4 6 0 f o t 4 4 7 0 p r i n t # 4 , t a b ( 2 3 ) ;4 4 8 0 f o t o 4 4 9 0 i s q r ( a r ( d , e ) * a r ( d , e ) a i ( d , e ) * a i ( d , e ) )4 5 0 0 a f 1 / s q r ( i r * i r i i * i i ) : i n a f * i n4 5 1 0 i i n > 1 t h e n i 4 5 2 0 i i r K . 1 t h e n p r i n t # 4 , " [ 1 s p c ] n ; : g o t o 4 5 9 04 5 3 0 i i n < . 2 t h e n p r i n t # 4 / " I ; : g o t o 4 5 9 04 5 4 0 i i n < . 4 t h e n p r i n t # 4 , B : D ; : g o t o 4 5 9 04 5 5 0 i i n < , 6 t h e n p r i n t # 4 , " * n ; : g o t o 4 5 9 04 5 6 0 i i n < . 8 t h e n p r i n t # 4 , c h r $ ( 1 6 6 ) ; : g o t o 4 5 9 04 5 7 0 i i n < . 9 t h e n p r i n t # 4 , " [ R V S ] * [ O F F ] " ; : g o t o 4 5 9 04 5 8 0 i i n t h e n p r i n t # 4 , " [ R V S ] [ s p c ] [ O F F ] " ;4 5 9 0 i t h e n p r i n t # 4 , c h r $ ( 1 3 ) ;4 6 0 0 n e x t e , d4 6 2 0 p r i n t # 4 , " [ 1 s p c ] "4 6 3 0 p r i n t # 4 , " i n p u t r e a l a m p l i t u d e : " ; i r4 6 4 0 p r i n t # 4 , " i n p u t i m a g i n a r y a m p l i t u d e : " ; i i4 6 5 0 p r i n t # 4 , " p h a s e a n g l e : " ; i p $4 6 6 0 p r i n t # 4 , " n o . o p h a s e q u a n t i z a t i o n l e v e l s : " ; p q4 6 7 0 i i p B r t h e n 4 7 0 04 6 8 0 p r i n t # 4 , " t r a n s f o r m n o r m a l i z e d w i t h . . . " ; n l4 6 9 0 p r i n t # 4 , " p e r c e n t o t r a n s f o r m e d a m p ' s

t r u n c a t e d . . . " ; p t4 7 0 0 r e t u r n

J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 39: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 39/84

C I R C L E Sf o t h C 6

A n t h o n y B r y a n tW i n n i p e g , M a n i t o b a

E v e r y g r a p h i c s p r o g r a m m e r n e e d s t d r a w c i r c l e s . F a s t a s s e mb l c o d e c i r c l e s a r a b e s t a c h a l l e n g e a n a w o r s e h e a d a c h e .I i a o p p o r t u n i t y t u s v a r i e t y o i n t e g e r m a t h a l g o r i t h m s ,t e s t i n g o n e ' s l a t e s t G ( g e e - w h i z ) s u p e r f a s t r o u t i n e s .

T h p r o g r a m G I R C L E S . B A S d e m o n s t r a t e s t w o t h b e s t k n o w nc i r c l e - d r a w i n g a l g o r i t h m s . I u s e s H I R E S b G a r y K i z i a k ( V o l . 5I s s . 6 o t h T r a n s a c t o r , r e p r i n t e d i V o l . 8 I s s . 2 ) f o t h u n d e r l yi n g r a p h i c s p r i m i t i v e s . I t ' s i n B a s i c , s i t ' s s l o w , b u a l s o e a s i e r t s t u d y , a n t h e n t r a n s l a t e t a s s e m b l y c o d e .

P o l y g o n s

S c a l l e d , b e c a u s e v a r y i n g t h i n c r e m e n t I N ( i d e g r e e s ) y i e l d sv a r i o u s p o l y g o n s ( t r y I N C = 4 5 ) . T h p r e s e n c e o s i n e s a n c o s i n e s w o u l d s e e m f o r m i d a b l e b a r r i e r t o t r a n s l a t i o n .

c i r c l e i s y m m e t r i c a l , s u c h t h a t k n o w i n g t h v a l u e o o n p o i n t , i c a n . b r e f l e c t e d a c r o s s t h x - a x i s o a c r o s s t h e y - a x i s .T h a t i s i w k n o w ( X Y i p o i n t o t h c i r c u m f e r e n c e , t h e n s i ( X , - Y ) . T h e s a m e i t r u e f o ( - X , Y ) a n ( - X , - Y ) . I y o d i v i d et h c i r c l e i n t o q u a d r a n t s t h e n y o o n l y h a v e t c o d e a n a r o v e r

t 9 d e g . T h e s e o b s e r v a t i o n s a l s o a p p l y t e l l i p s e s , ( c i r c l e i r e a l l y s p e c i a l c a s e o a e l l i p s e ) s t h a t w c a n h a v e s e p a r a t ex - r a d i u s a n y - r a d i u s .

P o t e n t i a l

T h s e c o n d m e t h o d i c a l l e d ' p o t e n t i a l f u n c t i o n ' a n i b a s e du p o n t h r e a l i z a t i o n t h a t t h s c r e e n c a n n o t p l o t p o i n t s e x c e p tw i t h i n t e g e r s . E v e r y p o i n t c o n n e c t s w i t h i t n e i g h b o r , s i y o a r a o n p o i n t o t h c i r c u m f e r e n c e a n t r y i n g t f i g u r e w h e r et h e n e x t p o i n t i s y o c a o n l y g i e i g h t d i r e c t i o n s .

T h i s a l g o r i t h m i m o r e e a s i l y c o n v e r t e d t a s s e m b l y , h a v i n g a i d o e s o n l y t h n e e d t m u l t i p l y a n d i v i d e . N o t e t h a t t h e s l o w e s tr o u t i n e i B a s i c c a p o t e n t i a l l y b t h f a s t e s t i a s s e m b l y !

F a s t e r C I R C L E S

P O T E N T I A L . P A L i s t r i c t t r a n s l a t i o n o t h i s a l g o r i t h m w h i c hy o c a r e l o c a t e w h e r e y o l i k e . T h s y n t a x i s

w h e r e :1 0 0 0 S Y S C I R C L E . X C . Y C . X R . Y R

X i t h a x i s c e n t r eY i t h a x i s c e n t r eX i t h a x i s r a d i u sY i t h a x i s r a d i u s

P O L Y G O N . P A L i t r a n s l a t i o n o t h s i n e s a n c o s i n e s a g o r i t h m r e f l e c t e d a b o u t t h a n a x e s . T h s y n t a x i s

1 0 0 0 S Y C I R C L E , X C , Y C , X R , Y R [ , S A , E A , I N C ]w h e r e a d d i t i o n a l l y :

S i t h s t a r t a n g l e i d e g r e e sE i t h e n a n g l e i d e g r e e s

I N i t h i n c r e m e n t i d e g r e e s

N o t e t h a t t h a n g l e p a r a m e t e r s a r o p t i o n a l a n m a b o m i t t e di a n o r d e r , j u s t u s c o m m a s a s p l a c e h o l d e r s .

S o u r c e N o t e s

W h i l e t h ' p o t e n t i a l f u n c t i o n ' m e t h o d i f a s t i i t h l e a s t f l e x i b l ea n t a k e s u 1 2 m o r e b y t e s . T h ' p o l y g o n s r o u t i n e ' g a i n s l o i s p e e d b u s i n g s i n e f u n c t i o n l o o k u p t a b l e . t a b l e o 9 v a l u e s f o 9 d e g r e e s y i e l d s r e s o l u t i o n o d e g r e e . T h i s i a d m i t t e d l y c o m p r o m i s e b e t w e e n t a b l e s i z e , a n u s e f u l r e s o l ut i o n . I n u s e , i t j u s t a f a s t a n m o r e f l e x i b l e . N o o n l y d o y o u g e c i r c l e s a n e l l i p s e s , b u a l s o a r c s a n p o l y g o n s . A n t h m a i nl o o p , w h i c h c a l c u l a t e s r a d i u s a n t h e t a , c a b r e a d i l y a p p l i e d t n e g r a p h i c s c o m m a n d s t h a t r e q u i r e p o l a r c o o r d i n a t e s , s u c h a r o t a t i o n .

T h T r a n s a c t o r 3 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 40: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 40/84

g r a p h i c c o m m a n d l i k e C I R C L E , d e p e n d s s m u c h o f a s tu n d e r l y i n g p r i m i t i v e s , l i k e P L O T a n D R A W . ' H I R E S ' h a s a f a s tl i n e - D R A W a l g b r i t h m , b u t f a s t e r p o i n t - P L O T c o u l d b e c o d e d t m a k e u s o a Y - l o o k u p t a b l e . T w h u n d r e d b y t e s ( 0 - 1 9 9v a l u e s ) t h o u g h , w o u l d b e l o o e x t r a o v e r h e a d , i t ' s t r u e !

C o d i n g C I R C L E S , g i v e s o n c h a n c e t d u s t o f t h e o l dc o m p u t e r - m a t h t e x t b o o k s o t a d n e b o o k s t y o u r l i b r a r y .S o m e t h i n g t p l a y w i t h o c o l d a n r a i n y w i n t e r d a y s .

C I R C L E S . B A S : U s i n g t h p o l y g o n a l g o r i t h m ( 1 7 0 - 2 9 0 ) f o l o w e d b t h p o t e n t i a l a l g o r i t h m ( 3 1 0 - 6 5 0 ) . T h g e n e r a t o r f o G a r r y K i z i a k ' s " H I R E S " M s u b r o u t i n e s i n o s h o w n h e r e , b u c a n b e f o u n d i V o l u m e I s s u e ( o o D i s k # 1 9 ) . I w i l l a l s o b i n c l u d e d o T r a n s a c t o r D i s k # 2 f o r t h i s i s s u e .

D L I

K I

G L F E G C D I

A L H D O F

C I

N A H O

P F

E B H J B E F J E I

J

1 0 r e m ' c i r c l e s ' i b a s i c2 i f p e e k ( 4 9 1 5 2 ) < > 7 6 t h e n l o a d " h i r e s " , 8 , 11 0 0 :1 1 h i r e s 1 2 * 4 0 9 6 : d r a w h 3 p l o t d 1 2 m o v e p 3 c l s c r m 3 d m o d e = c l + 31 3 0 s e l p c d 3 c o l o u r s e + 3 : b o x c o + 31 4 0 t e x t = b o . + 3 p r n t = t e + 3 : c h s e t p 1 5 0 t r a p c 1 6 0 :1 7 r e b a s i c c i r c l e s - p o l y g o n s1 8 0 s y s h i r e s , 0 , 1 , 61 9 x 1 6 0 : y 1 0 0 : x 9 9 y 7 2 0 s 0 e a = 3 6 0 : i n 2 1 z s a * n / 1 8 0 : z e a * i r / 1 8 0 : z i n c * 7 t / 1 8 02 2 0 x x x r * c o s ( z 1 ) : y y r * s i n ( z 1 )2 3 s y m o v e , x , y2 4 f o z t z s t e p z 32 5 x x r * c o s ( i ) : y = y c + y r * s i n ( i )2 6 s y s d r a w . x . y2 7 n e x t2 8 s y p r n t , 1 6 , 1 2 , " p o l y g o n s "2 9 0 f o r t t 2 0 0 0 : n e x t3 0 0 :3 1 0 r e m b a s i c c i r c l e s p o t e n t i a l3 2 0 s y s h i r e s , 0 , 1 , 63 3 x 1 6 0 : y 1 0 0 : x 9 9 y 7 3 4 p h i ° / o O y p h i % 0 x y p h i % 0 y ° / o

x ° / o x 3 5 0 f 0 : i f x r < y r t h e n f3 6 i t h e n x ° / o y r t x r x y r y r = t m3 7 0 r e m s t a r t l o o p3 8 y p h i % p h i ° / o y y o / o3 9 x y p h i ° / o y p h i o / o - x % - x %4 0 i f f = O t h e n x 2 x ° / o : x 3 y ° / o4 1 i t h e n y x % y y ° / o4 2 t 2 % = x % t % = t 2 ° / o * y r / x r4 3 i f 0 t h e n y 3 = t 1 %4 4 i t h e n x 2 = t 1 %4 5 t 2 % = y % : t 1 % t 2 ° / o * y r / x r

T h T r a n s a c t o r 3

O K E E A O G G M I

G O

I I

B

P A M L K

4 6 i f f = 0 t h e n y 2 = t 1 %4 7 i f f = 1 t h e n x 3 = t 1 %4 8 4 9 s y s p l o t , x c x 2 , y c y 5 0 s y s p l o t , x c - x 2 , y c y 5 1 s y s p l o t , x c - x 2 , y c - y 25 2 s y p l o t . x c x 2 , y c - y 25 3 5 4 s y p l o t . x c x 3 , y c y 5 5 s y p l o t , x c - x 3 , y c y 5 6 s y p l o t , x c - x 3 , y c - y 35 7 s y p l o t . x c x 3 , y c - y 35 8 0 :5 9 p h i % y p h i ° / o : y ° / o y + 6 0 i a b s ( x y p h i ° / o ) < a b s ( y p h i ° / o ) t h e n

p h i ° / o x y p h i % : x ° / o x ° / o - 16 1 i x ° / o > y ° / o g o t o 3 8 ' l o o p f o m o r e6 2 0 :6 3 s y p r n t , 1 6 , 1 2 , " p o t e n t i a l "6 4 0 f o r t = 1 t 2 0 0 0 : n e x t6 5 e n

C r e a t e s P R f i l e P O T E N T I A L . O B J

F A B N F C B O G C E D K

I G E L N C P I

C J

I P H N E J

1 0 0 0 r e m c r e a t e s m o d u l e p o t e n t i a l . o b j1 0 1 0 f o t 5 4 5 : r e a d1 0 2 0 c h c x n e x t1 0 3 0 i c h < > 5 7 8 3 6 t h e n p r i n f c h e c k s u m e r r o r "

: e n d1 0 4 0 p r i n t " d a t a o k , n o c r e a t i n g f i l e ' : p r i n t1 0 5 0 r e s t o r e1 0 6 0 o p e n 8 , 8 , 8 , " 0 : p o t e n t i a l . o b j , p , w "1 0 7 0 p r i n t # 8 , c h r $ ( 0 ) c h r $ ( 1 2 8 ) ;1 0 8 0 f o t 5 4 5 : r e a d1 0 9 0 p r i n t # 8 , c h r $ ( x ) ; : n e x t1 1 0 0 c l o s e1 1 1 0 p r i n t " p r g f i l e ' p o t e n t i a l . o b j ' c r e a t e d . . .1 1 2 0 p r i n t " t h i s g e n e r a t o r n l o n g e r n e e d e d .1 1 3 0 r e 1 1 4 0 d a t a 9 9 0 7 9 0 7 0 0 5 5 1 1 5 0 d a t a 1 6 2 , 3 , 1 8 9 , 4 3 , 1 9 2 , 1 5 7 , 4 7 , 1 9 21 1 6 0 d a t a 2 0 2 , 1 6 , 2 4 7 , 9 6 , 1 6 2 , 3 , 1 8 9 , 4 1 1 7 0 d a t a 1 9 2 , 1 5 7 , 0 , 1 2 8 , 2 0 2 , . 1 6 , 2 4 7 , 9 1 1 8 0 d a t a 3 2 , 1 3 5 , 1 9 3 , 3 2 8 , 1 2 8 , 3 2 , 1 3 51 1 9 0 d a t a 1 9 3 , 3 2 2 0 , 1 2 8 , 1 6 9 , 0 , 1 3 3 , 3 1 2 0 0 d a t a 1 3 3 , 8 7 , 1 3 3 , 8 8 , 1 3 3 , 4 1 , 1 3 3 , 4 1 2 1 0 d a t a 1 7 3 , 0 , 1 2 8 , 1 3 3 , 3 9 , 2 0 5 , 2 , 1 2 81 2 2 0 d a t a 1 7 3 , 1 , 1 2 8 , 1 3 3 , 4 0 , 2 3 7 , 3 , 1 2 81 2 3 0 d a t a 1 7 6 , 3 4 , 1 6 9 , 2 5 5 , 1 3 3 , 3 8 , 1 7 3 , 21 2 4 0 d a t a 1 2 8 , 1 3 3 , 3 9 , 1 7 0 , 1 7 3 , 3 , 1 2 8 , 1 3 31 2 5 0 d a t a 4 0 , 1 6 8 , 1 7 3 , 0 , 1 2 8 , 1 4 1 , 2 , 1 2 81 2 6 0 d a t a 1 4 2 , 0 , 1 2 8 , 1 7 3 , 1 , 1 2 8 , 1 4 1 , 31 2 7 0 d a t a 1 2 8 , 1 4 0 , 1 , 1 2 8 , 1 6 6 , 4 2 , 1 3 4 , 9 1 2 8 0 d a t a 1 6 5 , 4 1 , 1 0 , 3 8 , 9 0 5 6 , 1 0 1 , 8

J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 41: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 41/84

N E A C O M M H K A

O L A L F E H C O A H P F O C

I L E K

E E

F F K N O K H

I C J P F E K K I L O O D A P

M

1 2 9 0 d a t a 1 3 3 , 8 9 , 1 6 5 , 9 0 , 1 0 1 , 8 8 , 1 3 3 , 9 1 3 0 0 d a t a 1 6 6 , 4 0 , 1 3 4 , 9 2 , 1 6 5 , 3 9 1 0 3 1 3 1 0 d a t a 9 2 , 1 3 3 , 9 1 2 4 , 1 6 5 , 8 9 , 2 2 9 , . 9 1 3 2 0 d a t a 1 3 3 , 9 1 , 1 6 5 , 9 0 , 2 2 9 , 9 2 , 1 3 3 , 9 1 3 3 0 d a t a 1 6 5 , 3 9 , 1 6 6 , 4 0 , 1 6 4 , 3 8 , 4 8 , 3 1 3 4 0 d a t a 1 4 1 , 4 3 , 1 9 2 , 1 4 2 , 4 4 , 1 9 2 , 3 2 , 1 9 11 3 5 0 d a t a 1 2 9 , 1 4 1 , 6 , 1 2 8 , 1 4 2 , 7 , 1 2 8 , 1 6 51 3 6 0 d a t a 4 1 , 1 6 6 , 4 2 , 1 4 1 , 4 , 1 2 8 , 1 4 2 , 51 3 7 0 d a t a 1 2 8 , 3 2 , 1 9 1 , 1 2 9 , 1 4 1 , 4 5 , 1 9 2 , 1 4 21 3 8 0 d a t a 4 6 , 1 9 2 , 7 6 , 2 3 1 , 1 2 8 , . 1 4 1 , 6 , 1 2 81 3 9 0 d a t a 1 4 2 , 7 , 1 2 8 , 3 2 1 9 1 , 1 2 9 , 1 4 1 , 4 1 4 0 0 d a t a 1 9 2 , 1 4 2 , 4 4 , 1 9 2 , 1 6 5 , 4 1 , 1 6 6 , 4 1 4 1 0 d a t a 1 4 1 , 4 5 , 1 9 2 , 1 4 2 , 4 6 , 1 9 2 , 3 2 , 1 9 11 4 2 0 d a t a 1 2 9 , 1 4 1 , 4 , 1 2 8 , 1 4 2 , 5 , 1 2 8 , 3 1 4 3 0 d a t a 7 7 , 1 2 9 , 1 7 3 , 4 , 1 2 8 , 1 7 4 , 5 , 1 2 81 4 4 0 d a t a 1 4 1 , 4 3 , 1 9 2 , 1 4 2 , 4 4 , 1 9 2 , 1 7 3 , 61 4 5 0 d a t a 1 2 8 , 1 7 4 , 7 , 1 2 8 , 1 4 1 , 4 5 , 1 9 2 , 1 4 21 4 6 0 d a t a 4 6 , 1 9 2 , 3 2 7 7 , 1 2 9 , 2 3 0 , 4 1 , 2 0 81 4 7 0 d a t a 2 , 2 3 0 , 4 2 , 1 6 5 , 8 9 , 1 6 6 , 9 0 , 1 3 31 4 8 0 d a t a 8 7 , 1 3 4 , 8 8 3 2 , 1 7 5 , 1 2 9 , 1 3 3 , 3 1 4 9 0 d a t a 1 3 4 , 3 7 , 1 6 5 , 9 1 , 1 6 6 , 9 2 3 2 , 1 7 51 5 0 0 d a t a 1 2 9 , 1 3 3 , 3 4 , 1 3 4 , 3 5 , 1 6 5 , 3 4 , 1 9 71 5 1 0 d a t a 3 6 , 1 6 5 , 3 5 , 2 2 9 , 3 7 , 1 7 6 , 1 6 , 1 6 51 5 2 0 d a t a 9 1 , 1 6 6 , 9 2 , 1 3 3 , 8 7 , 1 3 4 , 8 8 , 1 6 51 5 3 0 d a t a 3 9 , 2 0 8 , 2 , 1 9 8 , 4 0 , 1 9 8 , 3 9 , 1 6 51 5 4 0 d a t a 3 9 , 1 9 7 , 4 1 , 1 6 5 , 4 0 , 2 2 9 , 4 2 , 1 4 41 5 5 0 d a t a 3 7 6 , 1 0 8 , 1 2 8 , 9 6 , 1 7 3 , 4 7 , 1 9 21 5 6 0 d a t a 2 4 , 1 0 9 , 4 3 , 1 9 2 , 1 4 1 , 3 9 , 1 9 2 , 7 1 5 7 0 d a t a 1 7 3 , 4 8 , 1 9 2 , 1 0 9 , 4 4 , 1 9 2 , 1 4 1 , 4 1 5 8 0 d a t a 1 9 2 , 7 2 , 1 7 3 , 4 9 , 1 9 2 , 2 4 , 1 0 9 , 4 1 5 9 0 d a t a 1 9 2 , 1 4 1 , 4 1 , 1 9 2 , 1 7 3 , 5 0 , 1 9 2 , 1 0 91 6 0 0 d a t a 4 6 , 1 9 2 , 1 4 1 , 4 2 , 1 9 2 , 3 2 , 1 1 7 , 1 9 51 6 1 0 d a t a 1 7 3 , 4 7 1 9 2 , 5 6 2 3 7 , 4 3 1 9 2 , 1 4 1 6 2 0 d a t a 3 9 , 1 9 2 , 1 7 3 , 4 8 , 1 9 2 , 2 3 7 , 4 4 , 1 9 21 6 3 0 d a t a 1 4 1 , 4 0 1 9 2 , 3 2 1 1 7 , 1 9 5 , 1 7 3 , 4 1 6 4 0 d a t a 1 9 2 , 5 6 , 2 3 7 , 4 5 , 1 9 2 , 1 4 1 , 4 1 , 1 9 21 6 5 0 d a t a 1 7 3 , 5 0 , 1 9 2 , 2 3 7 , 4 6 , 1 9 2 , 1 4 1 , 4 1 6 6 0 d a t a 1 9 2 , 3 2 , 1 1 7 , 1 9 5 , 1 0 4 , 1 4 1 , 4 0 , 1 9 21 6 7 0 d a t a 1 0 4 , 1 4 1 , 3 9 , 1 9 2 , 7 6 , 1 1 7 , 1 9 5 , 1 1 6 8 0 d a t a 1 3 2 4 7 3 , 2 5 5 , 1 0 5 , 1 7 2 , 1 3 81 6 9 0 d a t a 7 3 , 2 5 5 , 1 0 5 , 0 , 1 7 0 , 1 0 4 , 9 6 , 1 3 31 7 0 0 d a t a 3 6 , 1 3 4 , 3 7 , 1 6 9 , 0 , 1 3 3 , 3 4 , 1 3 31 7 1 0 d a t a 3 5 , 1 6 2 , 1 7 2 4 , 1 0 2 , 3 5 , 1 0 2 , 3 1 7 2 0 d a t a 1 0 2 , 3 7 , 1 0 2 , 3 6 , 1 4 4 , 1 5 2 4 , 1 7 31 7 3 0 d a t a 2 , 1 2 8 , 1 0 1 , 3 4 , 1 3 3 , 3 4 , 1 7 3 ,1 7 4 0 d a t a 1 2 8 , 1 0 1 , 3 5 , 1 3 3 , 3 5 , 2 0 2 , 2 0 8 , 2 2 81 7 5 0 d a t a 1 7 3 , 0 , 1 2 8 , 1 3 1 , 1 2 8 , 2 4 0 , 4 1 7 6 0 d a t a 1 6 9 , 0 , 1 3 3 , 3 4 , 1 3 3 , 3 5 , 1 6 2 , 1 1 7 7 0 d a t a 3 8 , 3 6 , 3 8 , 3 7 , 3 8 , 3 4 , 3 8 , 3 1 7 8 0 d a t a 5 6 , 1 6 5 , 3 4 , 2 3 7 , 0 , 1 2 8 , 1 6 8 , 1 6 51 7 9 0 d a t a 3 5 , 2 3 7 , 1 , 1 2 8 , 1 4 4 , 4 , 1 3 2 , 3 1 8 0 0 d a t a 1 3 3 , 3 5 , 2 0 2 , 2 0 8 , 2 2 7 , 3 8 3 6 3 1 8 1 0 d a t a 3 7 , 1 6 5 , 3 6 , 1 6 6 , 3 7 9 6 7 6 , 1 3 81 8 2 0 d a t a 1 8

T h T r a n s a c t o r 3

D e m o n s t r a t i o n u s i n g P O T E N T I A L . O B J

F L O I

K I

G L F E M C C P G O E J

O H M J G M E C O N M H G M G

1 r e m c i r c l e s u s i n g p o t e n t i a l a l g o r i t h m2 i p e e k ( 4 9 1 5 2 ) < > 7 6 t h e n l o a d " h i r e s " , 8 , 13 i p e e k ( 3 2 8 0 0 ) < > 3 2 t h e n l o a d " p o t e n t i a l . o b j " , 8 , 11 0 0 :1 1 h i r e s 1 2 * 4 0 9 6 : d r a w h 3 p l o t d 1 2 m o v e p i + 3 : c l s c r = m o + 3 : d m o d e = c l + 31 3 s e l p c d 3 c o l o u r s 3 b o c 1 4 t e x t b 3 p r n t = t e 3 c h s e t = p r + 31 5 0 t r a p c 1 6 0 :1 7 c i r c l e 3 2 7 6 8 3 : r e m n o t h s a m e a

p o l y g o n1 8 0 s y s h i r e s , 0 , 1 , 61 9 0 :2 0 s y p r n t , 1 7 , 1 , " c i r c l e s "2 1 0 :2 2 0 x c 1 5 5 : y c 1 0 0 : x r 9 9 : y r 7 2 3 s y c i r c l e , x c , y c , x r , y r2 4 s y p r n t , 1 9 , 1 2 , " 1 "2 5 0 :2 6 x 1 0 0 : y 1 2 0 : x 9 0 y 5 2 7 s y c i r c l e , x c , y c , x r , y r2 8 s y p r n t , 1 0 , 9 , " 2 "2 9 0 :3 0 x 2 7 5 : y 1 0 0 : x r = 3 0 : y 8 3 1 s y c i r c l e , x c , y c , x r , y r3 2 0 s y s p r n t , 3 4 , 1 2 , " 3 "3 3 0 :3 4 0 x c 5 2 y 4 5 x r = 3 5 : y r = 3 03 5 s y c i r c l e , x c , y c , x r , y r3 6 0 s y s p r n t , 6 , 1 9 , " 4 "3 7 0 :3 8 f o t 3 0 0 0 : n e x t3 9 e n

C r e a t e s P R f i l e P O L Y G O N . O B J

J D B

A F C L O J

C E B K

I

1 0 0 0 r e c r e a t e s m o d u l e p o l y g o n . o b j1 0 1 0 f o r j t o 4 2 3 : r e a d x1 0 2 0 c h c x : n e x t1 0 3 0 i c h < > 4 8 4 6 6 t h e n p r i n f c h e c k s u m e r r o r "

e n 1 0 4 0 p r i n t " d a t a o k n o c r e a t i n g f i l e " : p r i n t1 0 5 0 r e s t o r e1 0 6 0 o p e n 8 , 8 , 8 , " 0 : p o l y g o n . o b j , p , w "1 0 7 0 p r i n t # 8 , c h r $ ( 0 ) c h r $ ( 1 2 8 ) ;1 0 8 0 f o t 4 2 r e a d1 0 9 0 p r i n t # 8 , c h r $ ( x ) ; : n e x t1 1 0 0 c l o s e1 1 1 0 p r i n t " p r g f i l e ' p o l y g o n . o b j ' c r e a t e d . . .1 1 2 0 p r i n t " t h i s g e n e r a t o r n l o n g e r n e e d e d .1 1 3 0 r e m

J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 42: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 42/84

E L P

G O

I O K I

M E H

I N N F O O P J

A A L I

O A M L H D J I

H A M N J K M F L C O H F P C C K M G H L

1 1 4 0 d a t a1 1 5 0 d a t a

0 0 0 , 0 , 0 5 7 2 3 2 , 1 2 1 , 0

1 1 6 0 d a t a 2 5 3 , 1 7 4 , 2 0 1 , 4 4 2 4 0 ,1 1 7 0 d a t a1 1 8 0 d a t a1 1 9 0 d a t a

1 2 4 , 1 9 3 , 1 0 4 , 9 6 , 1 6 2 ,1 9 2 , 1 5 7 , 4 7 , 1 9 2 , 2 0 2 ,1 6 2 . 3 . 1 8 9 . 4 3 . 1 9 2 .

1 2 0 0 d a t a 2 0 2 , 1 6 2 4 7 , 9 6 3 2 1 2 1 0 d a t a 2 8 , 1 2 8 , 3 2 , 1 3 5 , 1 9 3 ,1 2 2 0 d a t a 1 6 9 , 0 , 1 6 2 , 0 3 2 1 2 3 0 d a t a1 2 4 0 d a t a1 2 5 0 d a t a

4 1 2 8 , 1 4 2 , 5 1 2 8 ,1 3 2 9 , 1 2 8 , 1 4 1 ,7 , 1 2 8 , 1 6 9 , 5 3 2

1 2 6 0 d a t a 2 0 8 , 2 , 1 6 9 , 1 , 1 4 1 ,1 2 7 0 d a t a1 2 8 0 d a t a1 2 9 0 d a t a1 3 0 0 d a t a1 3 1 0 d a t a1 3 2 0 d a t a1 3 3 0 d a t a1 3 4 0 d a t a1 3 5 0 d a t a1 3 6 0 d a t a1 3 7 0 d a t a1 3 8 0 d a t a1 3 9 0 d a t a1 4 0 0 d a t a1 4 1 0 d a t a1 4 2 0 d a t a1 4 3 0 d a t a1 4 4 0 d a t a

0 , 1 3 3 , 9 1 , 1 3 3 , 9 2 1 7 4 , 5 , 1 2 8 , 1 6 0 , 2 5 5 ,

9 0 , 1 7 6 , 2 5 0 , 2 0 2 , 1 6 1 3 3 , 8 7 , 1 5 2 , 7 4 , 1 4 4 ,

5 6 , 2 2 9 , 8 7 , 1 3 3 , 8 7 1 0 6 , 1 3 3 , 8 8 , 1 5 2 , 4 1

5 6 , 2 3 3 , 3 , 1 3 3 , 8 9 1 7 4 , 3 , 1 2 8 , 3 2 , 3 3 ,

3 2 8 , 1 2 9 , 2 4 , 1 0 9 ,4 5 , 1 9 2 , 1 3 8 , 1 0 9 , 5 0

1 9 2 , 1 7 3 , 0 , 1 2 8 , 1 7 4 ,2 4 , 1 2 9 , 1 6 4 , 8 9 3 2

1 0 9 , 4 7 , 1 9 2 , 1 4 1 , 4 3 4 8 , 1 9 2 , 1 4 1 , 4 4 , 1 9 2 ,

8 3 2 4 3 , 1 9 6 , 1 6 6 ,9 6 , 1 9 8 , 9 1 3 2 , 1 1 3 ,

1 2 8 , 2 4 , 1 0 9 , 4 , 1 2 8 ,1 4 4 , 3 , 2 3 8 , 5 , 1 2 8 ,

1 4 5 0 d a t a 2 0 5 , 6 , 1 2 8 , 1 7 3 , 5 1 4 6 0 d a t a1 4 7 0 d a t a

1 2 8 , 1 4 4 , 2 , 1 9 8 , 9 2 1 6 , 1 3 , 2 4 , 7 3 , 2 5 5 ,

1 4 8 0 d a t a 1 3 8 , 7 3 , 2 5 5 , 1 0 5 , 0 1 4 9 0 d a t a1 5 0 0 d a t a1 5 1 0 d a t a1 5 2 0 d a t a1 5 3 0 d a t a1 5 4 0 d a t a1 5 5 0 d a t a1 5 6 0 d a t a1 5 7 0 d a t a1 5 8 0 d a t a1 5 9 0 d a t a

7 2 , 1 6 9 , 9 0 5 6 , 2 2 9 ,4 4 , 1 6 4 , 8 7 , 1 3 4 , 2 1

1 3 4 , 3 4 , 1 3 3 , 2 0 , 1 6 9 ,1 6 2 , 8 7 0 3 4 , 1 4 4 ,

2 0 7 2 , 1 6 5 , 3 5 , 1 0 1 ,1 0 4 , 7 0 3 5 , 1 0 6 , 2 0 2 ,

3 4 , 1 6 6 , 3 5 9 6 0 1 8 2 2 2 7 3 1 , 3 6 ,5 3 , 5 8 , 6 2 , 6 6 , 7 1 ,8 8 , 9 2 , 9 6 , 1 0 0 , 1 0 4 ,1 2 0 , 1 2 4 , 1 2 8 , 1 3 2 , 1 3 6 ,

1 6 0 0 d a t a 1 5 0 , 1 5 4 , 1 5 8 , 1 6 1 , 1 6 5 ,1 6 1 0 d a t a 1 7 8 , 1 8 1 , 1 8 4 , 1 8 7 , 1 9 0 ,1 6 2 0 d a t a 2 0 2 , 2 0 4 , 2 0 7 , 2 1 0 , 2 1 2 ,1 6 3 0 d a t a 2 2 2 , 2 2 4 , 2 2 6 , 2 2 8 , 2 3 0 ,1 6 4 0 d a t a 2 3 7 , 2 3 9 , 2 4 1 , 2 4 2 , 2 4 3 ,1 6 5 0 d a t a 2 4 8 , 2 4 9 , 2 5 0 , 2 5 1 , 2 5 2 ,1 6 6 0 d a t a 2 5 5 , 2 5 5 , 2 5 5 , 2 5 5 , 2 5 5 ,

T h T r a n s a c t o r

0 , 1 0 4 ,2 4 0 , 1 1 3

4 , 1 0 4 , 7 3 , 1 8 9 , 4

1 6 , 2 4 7 , 9 1 5 7 , 0 1 2 1 3 5 , 1 9 3 , 3

3 2 4 0 , 1 2 89 , 1 2 8 , 1 4 1

1 6 9 , 1 0 4 , 1 6 26 , 1 2 8 , 1 4 9 , 1 2 8 , 1 7 08 , 1 2 8 , 1 6

1 7 3 , 4 , 1 2 82 0 0 , 5 6 , 2 3 32 4 7 , 1 0 5 , 9

7 , 1 6 9 , 9 1 5 2 , 7 4 7

3 , 2 4 0 , 31 7 3 , 2 , 1 2 81 2 9 , 1 6 4 , 8

4 9 , 1 9 2 , 1 4 1 9 2 , 1 4 1 , 4

1 , 1 2 8 , 3 8 , 1 2 9 , 2

1 9 2 , 1 3 8 , 1 0 1 6 6 , 9 1 , 2 4 0

9 2 , 2 4 0 ,1 9 4 , 1 7 3 ,1 4 1 , 4 , 1 2 81 7 3 , 4 , 1 2 81 2 8 , 2 3 7 ,

7 6 , 1 0 9 , 1 2 81 0 5 , 1 7 1 7 0 , 1 0 4 , 9

8 7 , 1 6 8 , 1 0 41 9 0 , 7 6 , 1 2 9

0 , 1 3 3 , 3 1 1 2 4 , 1 0 12 1 , 1 3 3 , 3

2 0 8 , 2 3 5 , 1 3 34 , 9 , 1

4 0 , 4 4 , 4 7 5 , 7 9 , 8

1 0 8 , 1 1 2 , 1 1 61 3 9 , 1 4 3 , 1 4 1 6 8 , 1 7 1 , 1 7 51 9 3 , 1 9 6 , 1 9 92 1 5 , 2 1 7 , 2 1 92 3 2 , 2 3 4 , 2 3 2 4 5 , 2 4 6 , 2 4 2 5 3 , 2 5 4 , 2 5 2 5 5 , 2 5

D e m o n s t r a t i o n u s i n g P O L Y G O N . O B J . N o t i c e t h a t m o s t o t h i s d e m o i a l s o i t h p r e v i o u s d e m o . W a t c h t h C I R C L Ea d d r e s s i l i n e 1 7 i i n o t h s a m e f o b o t h d e m o s . T h f i r s tp a g e ) t h i s a r t i c l e s h o w s t h f i r s t t w s a m p l e s c r e e n s o t h i sp r o g r a m .

p .

J L

A I

K I

G L F E M C C O C L K F H D

C K C L K E M D O M E C P E N K P M C C

I E D K

N M C L C

4

1 r e m c i r c l e s , p o l y g o n s , a r c s2 i p e e k ( 4 9 1 5 2 ) < > 7 6 t h e n l o a d " h i r e s " , 8 , 13 i p e e k ( 3 2 8 2 0 ) < > 3 2 t h e n l o a d " p o l y g o n . o b j " , 8 , 11 0 0 :1 1 0 h i r e s 1 2 * 4 0 9 6 : d r a w h 3 : p l o t = d r 3 1 2 m o v e p 3 c l s c r m 3 d m o d e c 1 3 s e l p c d 3 c o l o u r s 3 b o c 1 4 t e x t = b 3 p r n t = t e 3 c h s e t = p r1 5 0 t r a p c 1 6 0 :1 7 c i r c l e 3 2 7 6 8 5 : r e m n o t t h e s a m e a

p o t e n t i a l1 8 0 s y s h i r e s , 0 , 1 , 61 9 0 :2 0 s y p r n t , 1 6 , 1 , " c i r c l e s "2 1 0 s a = 0 : e a = 3 6 0 : i n c = 52 2 0 g o s u b 3 7 02 3 0 :2 4 s y p r n t , 1 6 , 1 / p o l y g o n s "2 5 s 0 e 3 6 0 : i n 4 2 6 0 g o s u b 3 7 02 7 0 :2 8 0 s y s p r n t , 1 8 , 1 , " a r p s "2 9 s 9 0 e a = 2 7 0 : i n 3 0 0 g o s u b 3 7 3 1 0 :3 2 s y p r n t , 1 6 , 1 , " m o r e a r c s "3 3 0 s a = 0 : e a = 1 8 0 : i n 3 4 0 g o s u b 3 7 03 5 0 e n d3 6 0 :3 7 x 1 5 5 : y 1 0 0 : x 9 9 y 7 3 8 s y c i r c l e , x c , y c , x r , y r , s a , e a , i n c3 9 s y p r n t , 1 9 , 1 2 , " 1 4 0 0 :4 1 0 x c 1 0 0 : y c 1 2 0 : x r 9 0 : y r 5 4 2 s y c i r c l e , x c , y c , x r , y r , s a , e a , i n c4 3 0 s y s p m t , 1 0 , 9 , " 2 "4 4 0 :4 5 x 2 7 5 : y c 1 0 0 : x r = 3 0 : y 8 4 6 s y c i r c l e , x c , y c , x r , y r , s a , e a , i n c4 7 0 s y s p m t , 3 4 , 1 2 , " 3 "4 8 0 :4 9 x 5 2 y 4 5 x 3 5 y 3 5 0 s y c i r c l e , x c , y c , x r , y r , s a , e a , i n c5 1 0 s y s p r n t , 6 , 1 9 , " 4 "5 2 0 :5 3 f o t 3 0 0 0 : n e x t5 4 s y c l s c r , 1 , 5 5 r e t u r n

J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 43: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 43/84

P O T E N T I A L . P A LM P J L C M G K M A O G G

K G A B P

1 I

P B

I A

F P C L

C C

B M J E K I I

F F P K J H K E

N L G K E

G K C N H G K O P N M B F F H P C B C M L K O E N

J B C D P C

A P H

K K D

1 0 r e ' h i r e s ' c i r c l e p o t e n t i a l1 1 r e s o u r c e f i l e b y a n t h o n y b r y a n t1 2 0 s y s 7 0 01 3 . o p t1 4 0 ;1 5 0 ;1 6 0 ; " h i r e s1 7 0 x 11 8 y 1 9 0 x 22 0 y 2 1 x 2 2 y 2 3 h 2 4 0 ;2 5 0 ;

v a r i a b l e s b g . k i z i a k$ c O 2 7$ c O 2 9

= $ c O 2 b$ c O 2 d$ c O 2 f$ c O 3 1$ c O 3 5

; c u r r e n t p o s i t i o n

; n e w p o s i t i o n

; c i r c c e n t r e ( a l s o b o x )

; h i r e s / m u l t i f l a g

2 6 0 ; " h i r e s " i n t e r n a l s u b r o u t i n e s2 7 i g e t i2 8 i e g e t2 9 m o v e3 0 i m o v3 1 i p i t3 2 i d r w3 3 0 ;

$ c 1 7 c$ c 1 8 7$ c 2 6 e$ c 2 7 1$ c 3 7 5$ c 4 2 b

3 4 ; z e r o p a g e l a b e l s3 5 0 1 13 6 0 1 23 7 f l a g3 8 3 9 4 0 p h 4 1 p h i y4 2 p h i x y4 3 0 ;

$ 2 $ 2 $ 2 $ 2 $ 2 $ 5 $ 5 $ 5

4 4 0 * $ 8 0 0 04 5 0 ;4 6 x 4 7 y 4 8 0 x 34 9 y 5 0 0 ;

. w o r O. w o r O. w o r O. w o r

i n t e r n a l g e i n t e g e r; i n t e r h a l e a g e x , ; ' m o v e ' r t i n t e r n a l m o v e t o x 1 , y 1

i n t e r n a l p l o ti n t e r n a l d r a w t o

; 5 4 5 b y t e s

; r a d i u s; r a d i u s

p o t e n t i a lp o t e n t i a l

5 1 . - s u b r o u t i n e m o v e t o x c . y c5 2 m o v e5 3 5 4 5 5 5 6 5 7 5 8 0 ;

I d # I d x 2 , xs t x c . xd e b p m o v e + 2r t

5 9 ; s u b r o u t i n e m o v e t o x r . y r6 0 m o v r6 1 6 2 6 3 6 4 6 5 6 6 0 ;

I d # I d x 2 , xs t x r . xd e b p m o v r + 2r t

6 7 ; s y s c i r c l e . x c . y c . x r . y r6 8 c i r c l e6 9 0 '7 0 7 1 7 2 7 3 7 4 7 5 7 6 7 7 7 8 7 9 0 ;

j s i e g e tj s m o v ej s i e g e tj s m o v rI d # s t f l a gs t p h s t a p h i + s t s t y +

8 0 c a s e s I d x 8 1 8 2 8 3 8 4 8 5 8 6 8 7 s w a p8 8 8 9 9 0 9 1 9 2 9 3 9 4 9 5 9 6

s t e m p y rI d x r + 1s t s b y r + 1b e l o o pI d # $ f fs t a f l a gI d y s t t a I d y r + 1s t t a I d x s t a y r

T h T r a n s a c t o r

; m o v e t o x c . y c

; m o v e t o x r . y r

; x = x r

b r a n c h i x r > = y

; y

; a n d s w a p

E K D M

I E K N L D K J H B J O L H L I

E I

A G B A I

L F N M A N J K K

C C L D L I

C K I

P H B D H E K C N K D L K C K

I N M

E M E

F N F N E G L C D A H N M M

I A K H H I

A G L

9 7 9 8 9 9 1 0 0 01 0 1 0 ;1 0 2 0 l o o p1 0 3 01 0 4 01 0 5 01 0 6 01 0 7 01 0 8 01 0 9 01 1 0 01 1 1 01 1 2 01 1 3 01 1 4 01 1 5 01 1 6 01 1 7 01 1 8 01 1 9 01 2 0 01 2 1 01 2 2 01 2 3 01 2 4 01 2 5 01 2 6 01 2 7 0 ;1 2 8 01 2 9 01 3 0 01 3 1 01 3 2 01 3 3 01 3 4 01 3 5 01 3 6 01 3 7 01 3 8 01 3 9 01 4 0 01 4 1 01 4 2 01 4 3 01 4 4 01 4 5 0 a l t n1 4 6 01 4 7 01 4 8 01 4 9 01 5 0 01 5 1 01 5 2 01 5 3 01 5 4 01 5 5 01 5 6 01 5 7 0 ;1 5 8 0 d o p l1 5 9 01 6 0 01 6 1 01 6 2 01 6 3 01 6 4 01 6 5 01 6 6 01 6 7 01 6 8 0 ;1 6 9 01 7 0 01 7 1 01 7 2 0 J 11 7 3 01 7 4 01 7 5 01 7 6 0 a b s 11 7 7 01 7 8 01 7 9 01 8 0 01 8 1 0 a b s 21 8 2 01 8 3 01 8 4 0 ;1 8 5 0 d o i f

s t x ; x w i t h y I d x s t y r + 1

s t

I d s t I d a s r o s e a d s t a -I d a d s t I d s t I d a s r o s t c l I d s b s t I d s b s t

I d I d I d b m s t s t j s s t s t I d I d s t s t j s s t s t j m s t s t j s s t s t I d I d s t s t j s s t s t

j s I d I d s t s t I d I d s t s t j s

i n b n i n I d I d s t s t j s s t s t I d I d j s s t s t

I d

x

; m a i n l o o p s t a r t

p h i y + 1

; p h i y = p h i + y y + p h i y + p h p h i yp h i y + 1p h p h i y + 1

p h i x y + ; p h i x y p h i y - x - x

p h i x y + 1p h i x y

p h i yp h i x yp h i x yp h i yp h i x y + 1p h i x y + 1

f l a ga l t nx x s c a l ey y

x x s c a l ey y d o p l ty y s c a l ex x

y y s c a l ex x

p l o t 4x x x x y y y y p l o t 4

J y + ; p h i yp h i y + 1 ; p h i p h i yp h p h i + 1a b s v ; t a k e a b s ( p h i y )t t p h i x yp h i x y + 1a b s v ; t a k e a b s ( p h i x y )t t 1 + 1

t ; i a b s ( p h i x y )

4

C O D N F F B H E

O K M C E H C P A B I

O I

G A K O E K E

I IM B K F J L F

J C A F

C B I

K C

I C B F D J L D J C C G G

1 K C G O A M N E G E

D L C P E D L K

C L G C

M F F B D G D K

1 8 6 01 8 7 01 8 8 01 8 9 01 9 0 0 t h e n1 9 1 01 9 2 01 9 3 01 9 4 01 9 5 01 9 6 01 9 7 0 J 21 9 8 0 e l s e1 9 9 02 0 0 02 0 1 02 0 2 02 0 3 02 0 4 0 s t o p2 0 5 0 ;

e m t ; a b s ( p h i y )I d t 1 + 1s b t ; t h e n . . .b e e l s e ; e l s e . . .I d p h i x yI d p h i x y + s t a p h is t p h ; p h i p h i x yI d a xb n j d e x + d e ; x - I d ; i f x > = ye m ; t h e n l o o pI d x + s b y + b e s t o p ; e l s e s t o pj m l o o pr t

2 0 6 0 s u b r o u t i n e r e f l e c t p o i n t s p l o t2 0 7 0 p l o t 42 0 8 02 0 9 02 1 0 02 1 1 02 1 2 02 1 3 02 1 4 02 1 5 02 1 6 02 1 7 02 1 8 02 1 9 02 2 0 02 2 1 02 2 2 02 2 3 02 2 4 02 2 5 0

. 2 2 6 02 2 7 02 2 8 02 2 9 02 3 0 02 3 1 02 3 2 02 3 3 02 3 4 02 3 5 02 3 6 02 3 7 02 3 8 02 3 9 02 4 0 02 4 1 02 4 2 02 4 3 02 4 4 02 4 5 02 4 6 0 ;

I d x c l a d x s t x p h I d x c + 1a d x s t x + p h I d y c l a d y s t y I d y c + 1a d y s t y 1 + 1j s i p i tI d x s e s b x s t x I d x c + 1s b x s t x 1 + 1j s i p i tI d y s e s b y s t a y 1I d y c + 1s b c y 2s t y 1 + 1j s i p i tp l s t a x 1 + p l s t x j m i p i t

2 4 7 0 s u b r o u t i n e a b s o l u t e v a l u e2 4 8 0 a b s v2 4 9 02 5 0 02 5 1 02 5 2 02 5 3 02 5 4 02 5 5 02 5 6 02 5 7 02 5 8 0 a b o k2 5 9 0 ;

b p a b o kc l e o # $ f fa d # p h t x e o # $ f fa d c # 0t a p l r t

2 6 0 0 s u b r o u t i n e t s c a l e o f f s e t2 6 1 0 s c a l e2 6 2 02 6 3 02 6 4 02 6 5 02 6 6 02 6 7 02 6 8 02 6 9 0 m u l l p2 7 0 02 7 1 02 7 2 02 7 3 02 7 4 0

; t 1 = t 2 * y r / x rs t t s t x t 2I d # s t t s t t + I d # 1 c l ; 1 b i i n t e g e r m a t hr o t 1 + 1r o t r o t r o r t 2b e c d e e n ic l

J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 44: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 44/84

D I

O D

I O F B C E

I H C O J H J P L N E E J

E E C O K D K D P O G O G M M

2 7 5 02 7 6 02 7 7 02 7 8 02 7 9 02 8 0 0

I d a d s t I d a d s t

2 8 1 0 d e c n 1 d e x2 8 2 02 8 3 02 8 4 02 8 5 02 8 6 02 8 7 02 8 8 02 8 9 02 9 0 0 d i v l p2 9 1 02 9 2 02 9 3 02 9 4 02 9 5 02 9 6 02 9 7 02 9 8 02 9 9 03 0 0 03 0 1 03 0 2 0

b n I d o r b e I d s t s t I d r o r o r o r o s e I d s b t a I d s b b c s t s t

3 0 3 0 d e c n 2 d e x3 0 4 03 0 5 03 0 6 03 0 7 03 0 8 03 0 9 03 1 0 0 e r r o r3 1 1 0 ;3 1 2 0 . e n d

b n r o r o I d I d r t j m

y t t y r + 1t 1 + 1t 1 + 1

m u l l px x e r r o r# t t 1 + 1# 1 6 -t t t t 1 + 1t x

t 1 + 1x r + 1d e c n 2t t 1 + 1

d i v l pt 1 t t

$ b b 8 a

C i r c l e s : P O L Y G O N . P A LC P J L C M G K M A O G G

K G A B P 1 I

P B

I A

F F A K C I

G G D B M K C H J B C N L

C H

C H C

1 0 0 r e m ' h i r e s '

; 1 b i i n t e g e r m a t h

; ' d i v i s i o n b z e r o "

c i r c l e p o l y g o n1 1 r e s o u r c e f i l e b y a n t h o n y b r y a n t1 2 0 s y s 7 0 01 3 . o p t1 4 0 ;1 5 0 ;1 6 0 ; " h i r e s "1 7 0 x 11 8 0 y 1 .1 9 0 x 22 0 y 2 1 0 x c2 2 y 2 3 h 2 4 0 ;2 5 0 ;

v a r i a b l e s b g . k i z i a k$ c O 2 7$ c O 2 9$ c O 2 b$ c O 2 d$ c O 2 f$ c O 3 1$ c O 3 5

; c u r r e n t p o s i t i o n

; n e w p o s i t i o n

; c i r c c e n t r e ( a l s o b o x )

; h i r e s / m u l t i f l a g

2 6 0 ; " h i r e s " i n t e r n a l s u b r o u t i n e s2 7 i g e t i2 8 i e g e t2 9 m o v e3 0 i m o v3 1 0 i p l t3 2 i d r w3 3 0 ;

$ c 1 7 c$ c 1 8 7$ c 2 6 e$ c 2 7 t$ c 3 7 5$ c 4 2 b

3 4 ; z e r o p a g e l a b e l s3 5 t h e t a

. 3 6 0 y s i g n3 7 x s i g n3 8 0 ;3 9 0 * $ 8 0 0 04 0 0 ;4 1 x 4 2 y 4 3 a r c s t4 4 a r c e n d4 5 d e l t a4 6 0 ;

$ 5 $ 5 $ 5

. w o r O. w o r O. w o r O. w o r 3 6 . b y t

; i n t e r n a l g e i n t e g e ri n t e r n a l e a g e x ,

; ' m o v e ' r t i n t e r n a l m o v e t o x , y [ i n t e r n a l p l o t

i n t e r n a l d r a w t o

; t h e a n g l e ( 0 - 9 0 d e g )d e p e n d e n t o q u a d r a n t

; 4 2 3 b y t e s

; r a d i u s; r a d i u s; a r c s t a r t ( d e g ); a r c e n a n g l ( d e g ); p o l y g o n i n c r ( d e g )

4 7 0 ; s u b r o u t i n e g e a n g l e ( d e g ) i n t e g e r4 8 0 ; a c c u r a c y t d e ( h e x 5 a = 9 0 d e g )4 9 g e t a n5 0 5 1 5 2 5 3 5 4 5 5 5 6

p h j s b e j s

$ 0 0 7 9n o m o r e$ a e f d

c m p # " . "b e p l j m

5 7 0 n o m o r e p l T h T r a n s a c t o r

n o m o r e

i g e t i

; s a v e a c

; e a t \ "

; a n o t h e r ' , " !; t h r o w a w a y a c ; g e t i n t e g e r t . .

K E D B E O H F A

E O A E M H

B A E L J H G L P P L H G D I

L N I

K I

E H M F M P I

F J F D L K F E D J B O D B N M O D

I A N D N C

C J P F B

L M G N F F

C P A N B M N B J E M M J

5 8 5 9 0 ;

r t ; r e s u l t i n . a & . x

6 0 ; s u b r o u t i n e m o v e t o x c . y c6 1 m o v e6 2 6 3 6 4 6 5 6 6 6 7 0 ;

I d # I d x 2 , xs t x c . xd e b p m o v e + 2r t

6 8 s u b r o u t i n e m o v e t o x r . y r6 9 m o v r7 0 7 1 7 2 7 3 7 4 7 5 0 ;

I d # I d a x 2 , xs t x r . xd e b p m o v r + 2r t

7 6 ; s y s c i r c l e . x c y c . x r . y r l . s a . e a j n c ]7 7 c i r c l e7 8 7 9 8 0 8 1 8 2 8 3 8 4 8 5 8 6 8 7 8 8 8 9 9 0 9 1 9 2 9 3 9 4 9 5 9 6 9 7 c r c 19 8 9 9 1 0 0 01 0 1 0 l o o p1 0 2 01 0 3 0

j s i e g e tj s m o v ej s i e g e tj s m o v rI d # I d # j s g e t a ns t a a r c s ts t a r c s t + 1I d # < 3 6 0I d # > 3 6 0j s g e t a ns t a r c e n d

; m o v e t o x c . y c

; m o v e t o x r . y r

d e f a u l t a r c s t; g e t s ( d e g r e e s )

d e f a u l t a r c e n d; g e t e ( d e g r e e s )

s t a r c e n d + I d # j s g e t a nt a b n c r I d # s t a d e l t aI d # s t $ 5

s t $ 5 I d a a r c s tI d a r c s t + 1I d y # $ f f

; d e f a u l t d e l t a; g e t i n c ( d e g r e e s )

; m i n i m u m

1 0 4 0 ; f i n d q u a d r a n t a n a n g l e t h e t a1 0 5 0 l p 21 0 6 01 0 7 01 0 8 01 0 9 01 1 0 01 1 1 01 1 2 01 1 3 01 1 4 0 I s 1 1 5 01 1 6 01 1 7 01 1 8 01 1 9 01 2 0 0 l p 31 2 1 0 I s 1 2 2 0 I s 1 2 3 0 r o r1 2 4 01 2 5 01 2 6 01 2 7 01 2 8 01 2 9 01 3 0 0 l p 4

i n s e s b # $ 5 ab e I p d e b p l I p 2a d # $ 5 as t t h e t at y

b c I p I d # $ 5 as e s b t h e t as t a t h e t at y

s t y s i g nt y a n d # 3b e I p s e s b # s t x s i g n

1 3 1 0 ; d o y r * s i n ( t h e t a )1 3 2 01 3 3 01 3 4 01 3 5 01 3 6 01 3 7 01 3 8 01 3 9 01 4 0 01 4 1 01 4 2 0

I d y I d x y rj s c a l c s i nI d y s i g nj s a b s vc l a d y s t y t x a d y c + 1s t y +

1 4 3 0 ; d x r * c o s ( t h e t a )1 4 4 01 4 5 01 4 6 01 4 7 0

I d a x rI d x r + 1j s c a l c c o sI d x s i g n

4

; . q u a d n ( 0 - 3 )

; ( 0 - 9 0 d e g )

; c h e c k s i g n

G I

E I

E E I

G A G H L

M E I

C O K A A N K P L K P L P G K C E A B

I K I

H P

G N I

D P G L I

N A G N B F G A J P

A O E G G A H H J E M E B H H N D C K O O L

M N M G B

I M G G O O

1 4 8 01 4 9 01 5 0 01 5 1 01 5 2 01 5 3 01 5 4 01 5 5 01 5 6 01 5 7 01 5 8 01 5 9 01 6 0 01 6 1 0 l p 51 6 2 01 6 3 0 I p 1 6 4 01 6 5 01 6 6 01 6 7 01 6 8 01 6 9 0 I p 71 7 0 01 7 1 01 7 2 01 7 3 01 7 4 01 7 5 0 l p 81 7 6 0 ;

j s a b s v ; c h e c k x s i g nc l a d x s t x t x a d x c + 1s t x I d $ 5 b e I p ; f l a g a m o v e t oj s i d r w d r a w t oI d $ 5 b e I p r t d e $ 5 ; c a n c e l f l a gj s i m o v m o v e t oI d d e l t ac l a d a r c s ts t a r c s tb c I p i n a r c s t + 1I d a a r c s te m a r c e n dI d a r c s t + 1s b a r c e n d +b c I p d e c $ 5 c ; c a n c e l f l a gj m l o o p

1 7 7 0 s u b r o u t i n e a b s o l u t e v a l u e1 7 8 0 a b s v1 7 9 01 8 0 01 8 1 01 8 2 01 8 3 01 8 4 01 8 5 01 8 6 01 8 7 01 8 8 0 a b o k1 8 9 0 ;

b p a b o kc l e o « $ f fa d # p h t x e o # $ f fa d c # 0t a p l r t ; r e s u l t i n . a & . x

1 9 0 0 s u b r o u t i n e c a l c u l a t e s i n e u n 1 9 1 0 c a l c c o s p h 1 9 2 01 9 3 01 9 4 01 9 5 01 9 6 01 9 7 01 9 8 0 c a l c s i n1 9 9 02 0 0 02 0 1 0 c a l c2 0 2 02 0 3 02 0 4 02 0 5 02 0 6 0 c a l 22 0 7 02 0 8 02 0 9 02 1 0 02 1 1 02 1 2 02 1 3 02 1 4 02 1 5 0 c a l 32 1 6 0 r o 2 1 7 02 1 8 02 1 9 02 2 0 02 2 1 02 2 2 0 ;2 2 3 0 s i n e

I d # $ 5 as e s b t h e t a ; ( 9 0 - t h e t a )t a p l . b y t $ 2 cI d y t h e t as t $ 1 ; h i b y tI d x s i n e . ys t $ 2 s t $ 1 ; l o b y tI d # s t $ 2 I d # ; 1 6 b i t * f r a c tI s $ 2 b c c a l 3c l a d c $ 1 4p h I d $ 2 a d c $ 1 5s t $ 2 p l I s $ 2 d e b n c a l 2s t $ 2 ; r e s l o i . I d $ 2 r t ; r e s h i i .

; t a b l e o f s i n e s ( 0 - 9 0 d e g )2 2 4 0 . b y t $ 0 0 , $ 0 4 ) $ 0 9 , $ 0 d , $ 1 2 , $ 1 6 , $ 1 b , $ 1 f2 2 5 0 . b y t $ 2 4 l $ 2 8 , $ 2 c , $ 3 1 , $ 3 5 , $ 3 a , $ 3 e , $ 4 22 2 6 0 . b y t $ 4 7 , $ 4 b , $ 4 f , $ 5 3 , $ 5 8 , $ 5 c , $ 6 0 , $ 6 42 2 7 0 . b y t $ 6 8 , $ 6 c , $ 7 0 , $ 7 4 , $ 7 8 t $ 7 c , $ 8 0 , $ 8 42 2 8 0 . b y t $ 8 8 , $ 8 b , $ 8 f , $ 9 3 , $ 9 6 , $ 9 a , $ 9 e , $ a 12 2 9 0 . b y t $ a 5 , $ a 8 , $ a b , $ a f , $ b 2 , $ b 5 , $ b 8 , $ b b2 3 0 0 . b y t $ b e , $ c 1 I $ c 4 l $ c 7 , $ c a , $ c c , $ c f , $ d 2 3 1 0 . b y t $ d 4 1 $ d 7 ) $ d 9 1 $ d b ) $ d e 1 $ e 0 , $ e 2 , $ e 42 3 2 0 . b y t $ e 6 , $ e 8 , $ e a , $ e c , $ e d ) $ e f I $ f 1 , $ f 2 3 3 0 . b y t $ f 3 ,2 3 4 0 . b y t $ f c ,2 3 5 0 . b y t $ f f ,2 3 6 0 ;2 3 7 0 . e n d

$ f 5 , $ f 6 , $ f 7 , $ f 8 , $ f 9 , $ f a , $ f $ f d , $ f e , $ f e , $ f f , $ f f , $ f f , $ f $ f f , $ f

J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 45: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 45/84

I n s i d e C 1 2 8 C P / M :S u p p o r t i n g M o r eF o r e i g n D i s k F o r m a t s

M i k e G a r a m s z e g h yT o r o n t o , O n t a r i o

. . y o u c a e a s i l y a d s u p p o r t f o v i r t u a l l y a n C P / M d i s k f o r m a t . . .

O n o t h n i c e s t f e a t u r e s o C - 1 2 8 C P / M m o d e i i t a b i l i t y t r e a da n w r i t e " f o r e i g n d i s k f o r m a t s w h e n u s e d w i t h 1 5 7 1 d i s k d r i v e .T h i s a b i l i t y i b u i l t r i g h t i n t o t h o p e r a t i n g s y s t e m , s n s p e c i a l u s e r

p r o g r a m m i n g i r e q u i r e d t a c c e s s t h i s f e a t u r e . I a d d i t i o n , w i t hb i o k n o w l e d g e o d i s k f o r m a t s , y o c a e a s i l y a d s u p p o r t f o v i r t u a l l y a n C P / M d i s k f o r m a t . Y o u c a n e v e n c r e a t e c u s t o mf o r m a t s o y o u r o w t k e e p y o u r d a t a a w a y f r o m p r y i n g e y e s . T h s e c r e t l i e s i k n o w i n g h o t h C P / M o p e r a t i n g s y s t e m r e c o g n i z e sd i f f e r e n t f o r m a t s .

D i s k O r g a n i z a t i o n

I o r d e r t u n d e r s t a n d C P / M d i s k o p e r a t i o n s , b r i e f d i s c u s s i o n o d i s k o r g a n i z a t i o n i i o r d e r . T h u s e r a r e a o C P / M d i s k i t y p i c a l l y d i v i d e d u i n t o n u m b e r o f i l e s . D i s k s p a c e f o f i l e s i d o l e d o u b t h e o p e r a t i n g s y s t e m i l u m p s c a l l e d " b l o c k s " o r" a l l o c a t i o n u n i t s " o f i x e d s i z e , t y p i c a l l y 1 0 2 4 b y t e s f o s i n g l e s i d e dd i s k s o 2 0 4 8 b y t e s f o d o u b l e s i d e d d i s k s . E v e n i f i l e c o n t a i n so n l y b y t e , a e n t i r e a l l o c a t i o n u n i t w i l l b r e q u i r e d . U n u s e d s p a c ei a a l l o c a t i o n u n i t c a n n o t b u s e d b o t h e r f i l e s , b u c a b u s e db t h f i l e t w h i c h i i a s s i g n e d i m o r e s p a c e i r e q u i r e d f o i t ( T c o m p l i c a t e m a t t e r s , t h a l l o c a t i o n u n i t s i z e d o e s n o d e p e n d o n t h p h y s i c a l d i s k s e c t o r s i z e , b u f o r t u n a t e l y n o n e o t h i s i o c o n c e r n t t h e c a s u a l u s e r ) .

E a c h a l l o c a t i o n u n i t i f u r t h e r d i v i d e d i n t o 1 2 8 - b y t e c h u n k s c a l l e d" r e c p r d s " . T h r e c o r d i t h s m a l l e s t d i r e c t l y a d d r e s s a b l e p a r t o f i l e . A f i l e g r o w s ( s u c h a s b e d i t i n g t e x t f i l e ) , r e c o r d s a r e a d d e da r e q u i r e d . I a l s p a c e c u r r e n t l y a l l o c a t e d t f i l e i t a k e n u p a n o t h e r a l l o c a t i o n u n i t i a l l o c a t e d . ( r e c o r d s c a f i i n t o 1 0 2 4b y t e b l o c k , o 1 i 2 0 4 8 b y t e b l o c k s i z e ) . s i n g l e d i r e c t o r y e n t r yh a s s p a c e f o 1 a l l o c a t i o n u n i t s ; i m o r e a r e r e q u i r e d e x t r a d i r e c t o r ye n t r i e s o " e x t e n t s " a r e c r e a t e d f o t h f i l e , e a c h t a k i n g u 3 b y t e so s p a c e i t h e d i r e c t o r y a r e a . T h d i r e c t o r y e n t r y k e e p s t r a c k o t h c u r r e n t r e c o r d c o u n t s t h a t s p a c e c a b a d d e d o d e l e t e d a r e q u i r e d .

E a c h a l l o c a t i o n u n i t i c o m p o s e d o o n o m o r e p h y s i c a l d i s ks e c t o r s . T h t r a n s l a t i o n b e t w e e n l o g i c a l a l l o c a t i o n u n i t s a n p h y s ic a s e c t o r s i h a n d l e d b t h C P / M s y s t e m u s i n g " t r a n s l a t i o nt a b l e " c a l l e d t h D I S K P A R A M E T E R T A B L E . T h i s c o n t a i n s t h e d a t ar e q u i r e d t c o n v e r t l o g i c a l r e c o r d s a n a l l o c a t i o n u n i t s i n t o p h y s i c a ll o c a t i o n s o t h d i s k a n i c o m p l e t e l y t r a n s p a r e n t t u s e r p r og r a m s , w h i c h s e e e v e r y t h i n g i t e r m s o s t a n d a r d a l l o c a t i o n u n i t sa n r e c o r d s . T h d i f f e r e n t p h y s i c a l d i s k f o r m a t s o b v i o u s l y r e q u i r ed i f f e r e n t v a l u e s f o t h t r a n s l a t i o n p a r a m e t e r s . O n c e t h e s e v a l u e sa r s e t f o r g i v e n d i s k f o r m a t , t h e u s e r n e e d n o b c o n c e r n e d w i t h

w h a t t h p h y s i c a l d i s k f o r m a t i b e c a u s e a l d i s k o p e r a t i o n s w i l l b a d j u s t e d a u t o m a t i c a l l y .

T h D i s k P a r a m e t e r T a b l e

I n f o r m a t i o n o t h e d i s k f o r m a t s i s t o r e d i a a r e a o t h C P / MB I O S ( o B a s i c I n p u t / O u t p u t S y s t e m ) k n o w n a t h " D I S K P A R A M ET E T A B L E " o D P T . T h a b s o l u t e l o c a t i o n o t h D P d e p e n d s o w h i c h v e r s i o n o t h C P / M o p e r a t i n g s y s t e m i b e i n g u s e d . T h r e ev e r s i o n s a r e c u r r e n t l y i u s o t h C - 1 2 8 , d i f f e r e n t i a t e d b t h e d a t ed i s p l a y e d o t h C P / M b o o t u s c r e e n . F o r t h e " A u 8 5 v e r s i o n ,t h D P i l o c a t e d f r o m $ d 8 7 6 t $ d a 7 5 i B A N K 0 F o r t h e " D e 8 5 a n " D e 8 5 v e r s i o n s , i i l o c a t e d a $ d 6 b d t $ d 8 b c . T a b l ei h e d u m p o t h D P T . I i d i f f i c u l t t e x a m i n e t h i s f r o m C P / Mm o d e b e c a u s e i r e s i d e s i B A N K 0 w h i l e m o s t p r o g r a m s w h i c ha l l o w y o t e x a m i n e m e m o r y i C P / M m o d e w o r k i B A N K 1 ( I C P / M , B A N K i u s e d f o t h o p e r a t i n g s y s t e m w h i l e B A N K i g e n e r a l l y t h e u s e r w o r k s p a c e o " T R A N S I E N T P R O G R A M A R E A "( T P A ) ) . Y o c a e x a m i n e i e a s i l y t h o u g h b u s i n g t h e C - 1 2 8 ' sM O N I T O R c o m m a n d i t h e f o l l o w i n g w a y : B o o t u C P / M . W h e ny o g e t h C P / M p r o m p t ( " A > " ) , r e m o v e t h C P / M b o o t d i s k t h e np r e s s t h e < C O N T R O L > < E N T E R > k e c o m b i n a t i o n . ( T h e < E N -T E R > k e i t h o n a t h e x t r e m e r i g h t o t h k e y b o a r d i t h n u m e r i c k e y p a d . I i N O t h s a m e a s t h e < R E T U R N > k e o t h m a i n k e y b o a r d ) . T h i s p e r f o r m s a s o f t r e s e t a n g e t s y o b a c k i n t o C 1 2 B A S I C 7 . m o d e . F r o m t h e r e y o c a u s M O N I T O R ' Sc o m m a n d t d i s p l a y t h m e m o r y .

A y o c a s e e , e a c h e n t r y i 3 b y t e s l o n g a n o n l y 9 o t h 1 s p a c e s a r a c t u a l l y u s e d . T h u n u s e d s p o t s a t h e n o t h t a b l ec a n b e i d e n t i f i e d b t h w o r d " N o n e " i t h e d i s k n a m e f i e l d . T h e s es p o t s ( o a n o t h o t h e r s p o t s , i y o u d o n o w i s h t k e e p t h d i s kf o r m a t t h a t i r e p r e s e n t s ) c a b f i l l e d w i t h c u s t o m v a l u e s .

E a c h o t h e b y t e s i d i s k p a r a m e t e r t a b l e e n t r y h a s p e c i f i cm e a n i n g . T h e s e a r e o u t l i n e d b e l o w . M a n y o t h p a r a m e t e r s a r r e p e a t e d i n u m b e r o s p o t s i e a c h D P e n t r y . T h i s i f o c o n v e n i e n c e s a k e a d i f f e r e n t p a r t s o t h C P / M o p e r a t i n g s y s t e mu s t h i n f o r m a t i o n i n d i f f e r e n t w a y s . F o c l a r i t y , t h b y t e s i e a c he n t r y a r n u m b e r e d f r o m 0 t 3 1 B i t s a r n u m b e r e d 5 2 1 0 ,w i t h b e i n g t h h i g h b i a n b e i n g t h l o b i t .

B y t e 0 i t h r o o t t t h " p r o b l e m " o r e c o g n i z i n g f o r e i g n d i s kf o r m a t . I c a b c a l l e d " m e d i a d e s c r i p t o r b y t e " b e c a u s e i i u s e dt o i d e n t i f y t h e p h y s i c a l f o r m a t o t h d i s k . I i t h i s b y t e w h i c h g e t sc o m p a r e d w h e n d i s k i s f i r s t r e a d . I t w o m o r e e n t r i e s i n t h D P h a v e i d e n t i c a l v a l u e s h e r e , t h e d i s k f o r m a t s e l e c t i o n b o w i l l a p p e a r

T h T r a n s a c t o r 4 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 46: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 46/84

o t h b o t t o m o t h s c r e e n a s k i n g y o t c h o o s e t h c o r r e c t f o r m a t .A l t h o u g h i i p e r h a p s t h m o s t i m p o r t a n t , t h i s b y t e i a l s o v e r yp o o r l y d o c u m e n t e d ( u n t i l n o w ) . ( T h e o n l y v a g u e r e f e r e n c e t i i C 1 2 8 d o c u m e n t a t i o n i o p a g e 7 0 o t h C - 1 2 8 P r o g r a m m e r sR e f e r e n c e G u i d e w h e r e i i g i v e n i c r y p t i c t e r m s s u c h a " S 2 5 6 * 2 + ( 1 6 * 2 - 8 ) + l ) ' \ E a c h o t h b i t s i t h e b y t e s e r v e ss p e c i f i c f u n c t i o n :

B i i f l a g w h i c h i n d i c a t e s w h e t h e r o r n o t t s k i p t r a c k o t h e d i s kd u r i n g a i n i t i a l i z a t i o n . I i i s e t ( t h e n o r m a l v a l u e ) , i m e a n st h a t t r a c k o t h e d i s k i t h s a m e a t h r e s t o f t h d i s k . I i i s e t 1 t r a c k 0 h a s d i f f e r e n t f o r m a t f r o m t h r e s t o t h d i s k . T h i s m a s e e m s t r a n g e , b u m a n y M F d i s k s ( s u c h a E p s o n Q X - 1 0 ) a r f o r m a t t e d d i f f e r e n t l y , t y p i c a l l y i s i n g l e d e n s i t y , o t r a c k 0 t h a n o t h o t h e r t r a c k s t m a i n t a i n c o m p a t i b i l i t y w i t h m u c h o l d e r d i s ks y s t e m s .

B i t s a n i n d i c a t e t h s e c t o r s i z e a f o l l o w s :

5 S e c t o r s i z e0 1 2 b y t e s

2 5 = 5 1 2

1 1 1 0 2 4

B i t s t g i v e a i n d i c a t i o n o t h n u m b e r o s e c t o r s p e t r a c k . I i a c t u a l l y t h b i n a r y r e p r e s e n t a t i o n o f

( # s e c t o r s / t r a c k )

S o m e t y p i c a l v a l u e s a r e :s e c t o r s / t r a c k

1 1 1

( l ) + 4( 4 ) + 4( 4 + l ) + 4( 2 ) + 4( 8 + 4 ) + 4

= ( 8 + 4 + 2 ) + 4

F i n a l l y , b i g i v e s t h m i n i m u m s e c t o r n u m b e r o s i d e 0 I t h v a l u e i 0 t h e n s e c t o r s a r n u m b e r e d s t a r t i n g a 0 I b i i s e t t o 1 t h s e c t o r s s t a r t a 1

B y t e i c a l l e d t h D i s k T y p e B y t e . I g i v e s a d d i t i o n a l d a t a o t h l o g i c a l s t r u c t u r e o d i s k . T h i s b y t e i d e s c r i b e d a t h b o t t o m o p a g e 7 1 o t h C o m m o d o r e 1 2 P r o g r a m m e r s R e f e r e n c e G u i d e .T h b i t s h a v e t h f o l l o w i n g m e a n i n g :

B i 7 d e s c r i b e s t h e d i s k t y p e : M F o G C R . T h i s i a l w a y ss e t f o f o r e i g n d i s k t y p e s .

B i g i v e s t e l l s h o t h s e c t o r s o s i d e o d o u b l e s i d e d d i s k a r en u m b e r e d :

b o t h s i d e s n u m b e r e d s a m es i d e c o n t i n u e s f r o m s i d e

F o s i n g l e s i d e d d i s k s , t h b i s h o u l d b s e t 0 I B M - 8 i a n e x a m p l eo b i v a l u e s e t t o 0 T h s e c t o r s o b o t h s i d e s a r e n u m b e r e d f r o mt 8 K a y p r o I i a n e x a m p l e o t h s e c o n d s i d e c o n t i n u i n g f r o m t h

f i r s t . T h s e c t o r s o t h f i r s t s i d e a r e n u m b e r e d f r o m t w h i l e t h s e c t o r s o t h s e c o n d s i d e a r n u m b e r e d f r o m 1 t 1 9

B i t s a n 5 g i v e t h s e c t o r s i z e , a s o u t l i n e d a b o v e f o b i t s a n o b y t e 0

B i t s t d e t e r m i n e t h o r d e r i w h i c h a d o u b l e s i d e d d i s k i f i l l e d .F o r a s i n g l e s i d e d d i s k , t h b i t s s h o u l d a l b s e t 0

f i l l t r a c k b t r a c k , f i r s t s i d e 0 t h e n s i d e o s a m e t r a c k t h e nn e x t t r a c k

0 1 f i l l t r a c k b t r a c k , e v e n t r a c k # ' o s i d e 0 o d o s i d ef i l l a l s i d e 0 t h e n s i d e

B i i a r e p e a t o b y t e 0 , b i t a d e s c r i b e d a b o v e .

B y t e s a n a r e n o t n o r m a l l y u s e d . T h e y r e p r e s e n t p o i n t e r t s e c t o r s k e w t a b l e . T h M F f o r m a t s s u p p o r t e d b C - 1 2 8 C P / M d n o u s e a s o f t w a r e s k e w . S e c t o r s a r e f i l l e d i n u m e r i c a l o r d e r o g i v e n t r a c k s u c h a s 1 , 2 , 3 , e t c . I t h i s c a s e , t h e s e b y t e s a r e s e t 0 I

s k e w t a b l e w e r e u s e d , b y t e s 2 a n w o u l d p o i n t t t a b l ec o n t a i n i n g t h e o r d e r i w h i c h t h s e c t o r s a r f i l l e d s u c h a s 1 , 4 , 7 , 2 ,e t c . T h i s t a b l e i o f t e n l o c a t e d i u n u s e d e n t r i e s i n t h d i s kp a r a m e t e r t a b l e , b u c a n b e l o c a t e d a n y w h e r e i B A N K R A M . I i d i f f i c u l t t s e u w i t h o u t d e t a i l e d k n o w l e d g e o b o t h t h d i s ko r g a n i z a t i o n a n C P / M m e m o r y m a f o t h s p e c i f i c C P / Mv e r s i o n t h a t y o a r e u s i n g . F o r t u n a t e l y , i i n o n o r m a l l y u s e de x c e p t f o s o m e r e a l l y w e i r d d i s k f o r m a t s s u c h a O S B O R N EO S M O S I S a n C r o m e m c o .

B y t e s t 2 r e p r e s e n t a s t a n d a r d C P / M D P e n t r y a s d e s c r i b e do p a g e 6 8 o t h C - 1 2 8 P r o g r a m m e r s R e f e r e n c e G u i d e .

B y t e s 4 a n a r r e f e r r e d t a s t h e S P T . T h i s i t h t o t a l n u m b e r o 1 2 b y t e r e c o r d s p e l o g i c a l t r a c k . I i 1 b i w o r d c o d e d i l o b y t e / h i g h b y t e f o r m a t . T h s i z e o f t h l o g i c a l t r a c k d e p e n d s o b o t ht h p h y s i c a l f o r m a t o t h d i s k a n t h o r d e r i w h i c h i i f i l l e d . F o e x a m p l e , s i n g l e s i d e d d i s k w i t h s e c t o r s p e t r a c k , e a c h 5 1 b y t e s , w o u l d h a v e 3 r e c o r d s p e t r a c k . d o u b l e s i d e d d i s k o t h s a m e p h y s i c a l f o r m a t m a h a v e e i t h e r 3 ( i t h l o g i c a l t r a c ki n c l u d e s o n l y o n s i d e o t h d i s k ) o 6 ( i t h l o g i c a l t r a c k i n c l u d e sb o t h s i d e s o t h d i s k ) r e c o r d s p e l o g i c a l t r a c k , d e p e n d i n g o h o t h d i s k w a f i l l e d ( s e e b i t s t o t h e d i s k t y p e b y t e ) .

B y t e i c a l l e d t h B S o b l o c k s h i f t f a c t o r . I i e q u i v a l e n t t t h l o g a r i t h m i b a s e o t h n u m b e r o 1 2 b y t e r e c o r d s i d i s ka l l o c a t i o n u n i t o L O 2 ( B L S / 1 2 8 ) . V a l u e s a r e g i v e n b e l o w .

B y t e i t h B L o r b l o c k m a s k . I i e q u a l t l e s s t h a n t h n u m b e r o 1 2 b y t e r e c o r d s i a a l l o c a t i o n u n i t o ( B L S / 1 2 8 ) 1 V a l u e s f o B S a n B L a r e :

B L ( A l l o c a t i o n u n i t s i z e ) B S B L 1 0 2 42 0 4 84 0 9 6 *8 1 9 2 *

1 6 3 8 4 *

1 3 6

1 2

N o t e : B l o c k s i z e s m a r k e d w i t h a r n o n o r m a l l y u s e d i f l o p p y

T h T r a n s a c t o r J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 47: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 47/84

d i s k s y s t e m s . F o r d i s k s w i t h c a p a c i t y o g r e a t e r t h a n 2 5 b y t e s , d i s k f o r m a t w h i c h u s e s a l o t h d i s k , s e b o t h b y t e s t 0 B L o a l e a s t 2 0 4 8 m u s t b e u s e d .

B y t e 1 i t h e p h y s i c a l s e c t o r s h i f t f a c t o r o P S H . I i e q u a l t o T h a l l o c a t i o n u n i t s i z e ( B L S ) i n o d i r e c t e n t r y i t h D P b u i c a l c u l a t e d b t h e o p e r a t i n g s y s t e m f r o m t h B S a n B L v a l u e s . L O 2 ( [ s e c t o r - s i z e ] / 1 2 8 ) .

B y t e i t h e e x t e n t m a s k o E X M . T h i s i e q u a l t t h m a x i m u mn u m b e r o 1 f i l e e x t e n t s t h a t c a n b e c o d e d i n t o s i n g l e d i r e c t o r ye n t r y . T h m a x i m u m v a l u e s a r e g i v e n b e l o w . V a l u e s o l e s s t h a n t h m a x i m u m c a n b e u s e d , b u t t h i s w a s t e s d i r e c t o r y s p a c e a s o m e o t h a v a i l a b l e s p o t s i t h f i l e a l l o c a t i o n t a b l e w i l l n o b u s e d .v a l u e o m u s t b e u s e d f o d i s k s y s t e m s w h i c h r u u n d e r v e r y , o l dv e r s i o n s o C P / M . ( F o r e x a m p l e , i y o u w a n t t s u p p o r t d i s k f o r m a tt h a t r u n s o C P / M 1 . m a c h i n e . )

B L

1 0 2 42 0 4 84 0 9 68 1 9 2

1 6 3 8 4

T y p i c a lD S M < 2 5 6

1

E X D S 2 5

B y t e s a n 1 a r a 1 b i w o r d ( D S M ) r e p r e s e n t i n g t h e t o t a ln u m b e r o a l l o c a t i o n u n i t s o t h e d i s k i n c l u d i n g t h e d i r e c t o r y a r e a ,b u t e x c l u d i n g r e s e r v e d s y s t e m t r a c k s ( i a n y ) . T h b y t e s a r i l o b y t e / h i g h b y t e f o r m a t . D S c a b c a l c u l a t e d f r o m :

( n e t t r a c k s ) ( s e c t o r s / t r a c k ) / ' ( # s e c t o r s / a l l o c a t i o n u n i t )

w h e r e ( n e t # t r a c k s ) i t h t o t a l n u m b e r o t r a c k s o t h e d i s k m i n u st h r e s e r v e d s y s t e m t r a c k s .

B y t e s 1 a n 1 ( D R M ) a r e t h e t o t a l n u m b e r o d i r e c t o r y e n t r i e s o t h d i s k m i n u s 1 F o s i n g l e s i d e d f l o p p y d i s k s , t h n u m b e r o d i r e c t o r y e n t r i e s i u s u a l l y 6 a n f o d o u b l e s i d e d d i s k s i 1 2 8 .T h e r e f o r e , b y t e 1 i u s u a l l y e i t h e r $ 3 ( 6 3 ) o $ 7 ( 1 2 7 ) w h i l e b y t e1 i n o r m a l l y 0

B y t e s 1 3 a n 1 ( c a l l e d A L a n A L l ) g i v e t h n u m b e r o b l o c k sw h i c h a r r e s e r v e d f o d i r e c t o r y u s e . T h i s i a i n v e r t e d 1 b i n u m b e r o t h e f o l l o w i n g f o r m a t :

< B y t e 1 — X B y t e 1 4 . — >B i 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0

P o s i t i o n 0 1 2 3 4 5 6 7 8 9 A B C D E FE a c h p o s i t i o n w h i c h i s e t t o ( s t a r t i n g a p o s i t i o n 0 i n d i c a t e s o n a l l o c a t i o n u n i t r e s e r v e d f o d i r e c t o r y b l o c k . T y p i c a l l y , t h i s r e s u l t si b i t s a n b e i n g s e t , g i v i n g v a l u e o $ C f o b y t e 1 3 a n f o b y t e 1 4

B y t e s 1 5 a n 1 a r c a l l e d t h e d i r e c t o r y c h e c k s u m v e c t o r , C K S . T h 1 b i v a l u e i e q u a l t ( D R M l ) / 4 . F o 6 d i r e c t o r y e n t r i e s , b y t e1 h a v a l u e o $ 1 ( 1 6 ) , w h i l e f o 1 2 d i r e c t o r y e n t r i e s i h a v a l u e o $ 2 ( 3 2 ) . I b o t h c a s e s , b y t e 1 h a a v a l u e o 0

B y t e s 1 7 a n 1 g i v e t h t r a c k n u m b e r o t h f i r s t d i r e c t o r y s e c t o r( O F F ) . T h i s i u s e d f o d i s k p a r t i t i o n i n g a n t s k i p r e s e r v e d s y s t e mt r a c k s a t h b e g i n n i n g o t h d i s k . B y t e 1 i t y p i c a l l y i t h r a n g eo t 4 w h i l e b y t e 1 i n o r m a l l y 0 T c r e a t e y o u r o w c u s t o m

V a l u e s a r g i v e n b e l o w .

B y t e 2 i t h e p h y s i c a l s e c t o r m a s k o P H M . I i e q u a l t o

[ s e c t o r - s i z e ] / 1 2 8 - 1

P h y s i c a l s e c t o r s i z e P S P H

1 2 b y t e s2 5 b y t e s5 1 b y t e s

1 0 2 4 b y t e s■

B y t e s 2 t 3 a r n o p a r t o s t a n d a r d C P / M d i s k p a r a m e t e r t a b l eb u a r u s e d b t h C - 2 v e r s i o n o C P / M . B y t e 2 1 i t h n u m b e r o s e c t o r s o p h y s i c a l t r a c k . B y t e s 2 t 3 a r a A S C I I t e x t s t r i n gd e s c r i b i n g t h e d i s k n a m e . T h i s i t h n a m e w h i c h p o p s , u p i t h d i s k s e l e c t i o n b o a t h b o t t o m o t h s c r e e n w h e n t h s y s t e mc a n n o t d e c i d e w h a t t h f o r m a t i s O t h e r w i s e , i i n o t u s e d .

C u s t o m i z i n g y o u r D P W h a t p u r p o s e d o e s a l o t h i s d e t a i l e d t e c h n i c a l i n f o $ e r v e , y o a s k ?W e l l b p l a y i n g w i t h t h v a l u e s , y o c a g e y o u r C - 2 C P / M t r e a d a n w r i t e t h d i s k s f r o m y o u r u n c l e F r e d ' s a n c i e n t C P / Mm a c h i n e o y o c a c r e a t e y o u r o w C P / M d i s k f o r m a t s t h a t n o o n ee l s e c a r e a d t p r o t e c t y o u r d a t a . ( D e a r D i a r y . . . . )

T h e a s i e s t w a t c h a n g e t h D P i b e d i t i n g t h C P . S Y S f i l ew i t h d e b u g g e r u t i l i t y s u c h a S I D . C O M t l o a d t h e C P . S Y S f i l ei n t o m e m o r y , t h e n c h a n g e t h i n d i v i d u a l b y t e s , a n s a v e t h m o d i f i e d f i l e . E a c h t i m e y o b o o t u C P / M i t h f u t u r e , y o u w o u l dh a v e a u t o m a t i c s u p p o r t f o t h e s e o t h e r d i s k f o r m a t s . T h i s i i d e n t i c a lt t h m e t h o d d e s c r i b e d i t h a r t i c l e " C P / M a n t h 1 5 8 1 D i s kD r i v e " i T r a n s a c t o r v o 8 I s s u e ( N o v 8 7 ) . Y o c o u l d a l s o c h a n g et h p a r a m e t e r s i R A o n c e t h c o m p u t e r h a b e e n b o o t e d , b u tr e m e m b e r t h e y a r e s t o r e d i B A N K R A a n w i l l r e q u i r e s p e c i a lp r o g r a m m i n g i c o m m o n a r e a t d t h i s . T r y h i g h R A l o c a t i o ns t a r t i n g a $ f e O O f o t h l o c a t i o n o s u c h p r o g r a m . T h i s a r e a i n o r m a l l y u s e d a d i s k b u f f e r a n i f r e e f o n o n - d i s k I / O p r o g r a m sw h i c h n e e d c o m m o n B A N K 0 / B A N K m e m o r y . C h a n g i n g t h p a r a m e t e r s i R A i o n l y t e m p o r a r y m e a s u r e , w h i l e c h a n g i n gt h C P . S Y S f i l e i s p e r m a n e n t . T a k e y o u r p i c k .

T h l o c a t i o n s o f t h s e v e n u n u s e d d i s k p a r a m e t e r t a b l e e n t r i e s i t h C P . S Y S f i l e w h e n u s i n g S I a r e a s f o l l o w s :

A u 8 v e r s i o n D e $ 1 9 7 6$ 1 9 9 6$ 1 9 b 6$ 1 9 d 6$ l a l 6$ l a 3 6$ l a 5 6

o D e $ l e f d$ l f l d$ l f 7 d$ H 9 d$ l f b d$ l f d d$ 2 0 5 d

T h T r a n s a c t o r 4 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 48: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 48/84

T h e n o f i l e ( E O F ) f o t h A u v e r s i o n i $ 5 d 0 0 , w h i l e f o t h D e T a b l e 2 c o n t a i n s t h e v a l u e s f o s e v e r a l d i s k f o r m a t s w h i c h h a v ev e r s i o n s , i i $ 6 4 0 0 . T h e s e n u m b e r s w i l l b n e e d e d l a t e r w h e n r e a d d e d t m s y s t e m . T h M A X I - 7 1 a n d M A X I - 8 1 f o r m a t s a r e o n e sw r i t i n g t h f i l e . Y o s h o u l d a l w a y s u s e a b a c k u p w o r k d i s k w h e n w h i c h i n v e n t e d m y s e l f t h a t t a k e a d v a n t a g e o t h f u l l d i s k c a p a c i t yd o i n g t h e s e c h a n g e s b e c a u s e y o u r C P M + . S Y S f i l e w i l l b c h a n g e d ( a b o u t 3 9 f o 1 5 7 1 a n 7 9 f o 1 5 8 1 ) . T h e s e t w o f o r m a t s u s p e r m a n e n t l y . D n o m o d i f y y o u r o r i g i n a l s y s t e m d i s k ! ! ! 1 0 2 4 b y t e s e c t o r s , d o u b l e s i d e d , s e c t o r s p e t r a c k , n u m b e r e d t

4 T h d i s k p a r a m e t e r t a b l e e n t r i e s b e g i n a t h b y t e s s p e c i f i e d a b o v e ,a c c o r d i n g t t h b y t e p a r a m e t e r s p r e v i o u s l y d e s c r i b e d . S e l e c t a T c r e a t e d i s k s f o t h e s e n e f o r m a t s , y o w i l l n e e d t u s t h b u r s tu n u s e d s p o t t h e n u s e S I D ' s ' D ' c o m m a n d t d i s p l a y t h e m e m o r y a m o d e f o r m a t c o m m a n d f r o m C - 1 2 8 m o d e . F o r t h e 1 5 8 1 , t h t h a t l o c a t i o n . F o e x a m p l e , d l 9 7 6 < r e t u r n > w i l l d i s p l a y m e m o r y c o m m a n d i s s t a r t i n g a $ 1 9 7 6 . I t h d i s p l a y d o e s n o v a g u e l y r e s e m b l e t h f o r m a t o f t a b l e 1 t h e n s t o p b e c a u s e y o u d o n o h a v e t h c o r r e c t o p e n 1 5 , 8 , 1 5m e m o r y a r e a . ( C h e c k t s e t h a t y o h a v e t h c o r r e c t v e r s i o n C P p r i n t # 1 5 , d u 0 " c h r $ ( 1 3 4 ) c h r $ ( 3 ) c h r $ ( 7 9 ) c h r $ ( 5 )

t h e n t r y a g a i n ) . T h e s e l o c a t i o n s c a b c h a n g e d u s i n g S I D ' s ' S c h r $ ( O ) c h r $ ( 2 2 9 ) c h r $ ( O )c o m m a n d t t h e v a l u e s f o t h n e f o r m a t s t h a t y o w i s h t c l o s e 1 s u p p o r t . O n c e t h f i l e h a b e e n c h a n g e d , i c a b s a v e d a g a i nu s i n g S I D ' s ' c o m m a n d ( c p . s y s , 1 0 0 , ( E O F v a l u e ) < r e t u r n > F o r t h e 1 5 7 1 , t h e p r i n t # l c o m m a n d i s w h e r e ( E O F v a l u e ) i t h o n l i s t e d a b o v e f o y o u r C P / M v e r s i o n ) .F o d e s c r i p t i o n o h o t u s t h e s e , s e e t h e a r t i c l e m e n t i o n e d p r i n t # 1 5 , B u 0 " c h r $ ( 1 0 2 ) c h r $ ( 1 2 8 ) c h r $ ( 0 ) c h r $ ( 3 )a b o v e . I o r d e r t u s y o u r n e f o r m a t , y o m u s t d c o l d r e s e t ( i . e . c h r $ ( 3 9 ) c h r $ ( 5 ) c h r $ ( O ) c h r $ ( 0 ) c h r $ ( 2 2 9 )p u s h t h r e s e t b u t t o n o r < C O N T R O L > - < E N T E R > .

T a b l e 1 T h u n m o d i f i e d C - 2 C P / M d i s k p a r a m e t e r t a b l e

> 0 D 8 7 6 3 9 0 0 0 0 4 0 0 0 4 O 0 9 7 0 0 7 0 C 0 0 2 0 : . . @ > 0 D 8 8 6 0 0 2 0 0 0 1 0 1 1 4 7 0 7 3 6 6 2 5 5 3 3 : . . Q > 0 D 8 9 6 C A 0 0 0 0 5 0 0 0 0 4 O 0 B 0 7 0 C 0 0 2 0 : . . @ > 0 D 8 A 6 0 0 0 0 0 0 4 7 7 6 6 2 5 5 3 3 . . Q > 0 D 8 B 6 4 A 0 0 0 0 2 0 0 0 0 3 0 7 0 9 0 3 0 C 0 1 @ > 0 D 8 C 6 0 0 0 0 0 2 0 3 0 8 2 0 4 4 4 2 3 2 5 3 5 3 2 B S > 0 D 8 D 6 4 A 0 0 0 0 2 0 0 0 0 4 O 0 9 0 3 0 8 0 1 : . . . .> 0 D 8 E 6 0 0 0 0 0 2 0 3 0 8 2 0 4 4 4 2 3 2 0 4 4 5 2 B D > 0 D 8 F 6 4 E 2 0 0 0 2 0 0 0 4 O 0 C 0 7 0 C 0 0 2 0 . . . . @ > 0 D 9 0 6 0 0 0 0 0 2 0 0 A 4 B 6 7 9 5 0 7 6 2 0 4 9 5 6 2 0 I > 0 D 9 1 6 4 E 0 0 0 0 2 0 0 0 3 0 7 0 0 C 0 7 0 0 F 0 0 0 2 0 : L @ . . . . .> 0 D 9 2 6 0 0 0 0 0 2 0 0 A 4 B 6 7 9 5 0 7 2 6 2 4 4 9 2 0 I > 0 D 9 3 6 6 B 0 0 0 0 2 8 0 0 0 3 0 0 B 0 3 0 C 0 1 : . . . . . @ > 0 D 9 4 6 0 0 0 3 0 0 0 0 7 0 5 4 7 6 6 7 6 6 2 0 4 4 4 4 O b D > 0 D 9 5 6 4 B A 3 0 0 0 0 2 0 0 0 0 4 O F 0 9 0 3 0 8 0 1 : K . . . .> 0 D 9 6 6 0 0 0 0 0 2 0 3 0 8 2 0 2 5 6 6 6 6 5 7 2 2 0 2 I > 0 D 9 7 6 3 9 0 0 0 0 4 0 0 0 4 O F 0 8 0 7 0 C 0 0 2 0 : . @ > 0 D 9 8 6 0 0 0 4 0 0 0 0 1 4 7 7 6 F 6 E . 2 0 4 5 7 5 7 2 6 F : E p s o n E u r o> 0 D 9 9 6 F F 8 0 0 0 0 0 5 0 0 0 0 4 O F 0 B 0 7 F 0 0 C 0 0 2 0 : . . . . . . = . _ . @ > 0 D 9 A 6 0 0 2 0 0 0 2 0 3 0 8 2 0 2 2 4 6 6 6 5 2 0 2 0 2 0 N o n e> 0 D 9 B 6 F F 8 0 0 0 0 0 5 0 0 0 0 4 O 0 B 0 7 0 C 0 0 2 0 : . . . . . . = . _ . @ > 0 D 9 C 6 0 0 2 0 0 0 0 3 0 8 2 0 2 2 4 6 6 6 5 2 0 2 0 2 0 N o n e> 0 D 9 D 6 F 8 0 0 0 0 5 0 0 4 O F 0 B 0 7 0 C 0 0 2 0 : . . . . . . = . _ . @ > 0 D 9 E 6 0 0 0 2 0 0 0 2 0 0 8 2 0 2 0 2 0 4 6 6 6 5 2 0 2 0 2 0 N o n e> 0 D 9 F 6 F F 8 0 0 0 0 0 5 0 0 0 0 4 O F 0 B 0 7 0 C 0 0 2 0 : . . . . . . = . _ . @ > 0 D A 0 6 0 0 2 0 0 0 2 0 3 0 8 2 2 2 4 6 6 6 2 2 2 N o n e> 0 D A 1 6 F F 8 0 0 0 5 0 0 0 0 4 O F 0 B 0 7 0 C 0 2 : . . . . . . = . . . @ > 0 D A 2 6 0 0 0 2 0 0 0 2 0 3 0 8 2 0 2 2 4 E 6 F 6 6 5 2 0 2 0 2 0 N o n e> 0 D A 3 6 F F 8 0 0 0 0 0 5 0 0 0 4 O F 0 B 0 7 0 C 0 0 2 0 : . . . . . . = . _ . @ > 0 D A 4 6 0 0 0 2 0 0 0 2 0 0 8 2 0 2 2 4 6 6 6 5 2 0 2 0 2 0 N o n e> 0 D A 5 6 F F 8 0 0 0 0 0 5 0 0 0 0 4 . O F 0 B 0 7 0 C 0 0 2 0 : . @ > 0 D A 6 6 0 0 2 0 0 0 0 3 0 8 2 0 2 0 2 4 6 6 6 2 0 2 0 2 0 N o n e

N o t e : T h a d d r e s s r a n g e g i v e n a b o v e i f o t h " A u 8 5 v e r s i o n o t h C P . S Y S f i l e .T h " D e 8 5 a n " D e 8 5 s t a r t a t a d d r e s s $ 0 D 6 B D .

T h T r a n s a c t o r 4 J a n u a r y 1 9 8 8 ; V o l u m e 8 I s s u e O

Page 49: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 49/84

B y t e *

1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3

B y t e #

1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3

T h T r a n s a c t o i

T a b l e 2 D i s k P a r a m e t e r T a b l e v a l u e s f o s e l e c t e d n e d i s k f o r m a t s . ( N o t e : a l v a l u e s a r e i h e x )D i s k F o r m a t

X E R O X 1 6 - 8D 4 a 0 0 2 0 0 O

0 a 0 3 0 8 0 1 0 0 0 0 0 0 5 6 7 6 7 2 3 3 2 3

O L Y M P I A E T S 4 a 0 0 2 0 0 0 0 9 0 3 0 c 0 2 0 0 0 0 0 0 6 7 7 2 4 4 2 2 2 2

O L Y M P I A E X 1 0 0D 4 a 0 0 2 0 0 O

0 a 0 7

0 c 0 2 0 0 0 0 0 0 4

2 4 5 2 3 3 3 2 2

T E L E V I D E OD 3 9 0 0 4 0 0 O

0 b 0 7

0 c 0 2 0 0 0 0 0 1 5 6 6 6 7 6 6 6 6

2

M A X I - 7 1D 6 b 0 0 5 0 0 O

0 c 0 7

0 c 0 2 0 0 0 0 0 0 4 6 7 6 2 3 3 2 2 2

M A X I - 8 1D 6 b 0 0 5 0 0 O 0 9 0 7

0 c 0 2 0 0 0 0 0 0 4 6 7 6 2 3 3 2

. 2 2

D i s k F o r m a tN C R - D M

D 4 a 0 0 2 0 0 O 0 9 0 7

0 c 0 2 0 0 0 0 0 0 4 4 5 2 2 2 2 2 2 2

Z e n i t hZ 9 0 S S

3 9 0 0 2 0 0 0 0 9 0 7

0 f 0 2 0 0 0 0 0 1 4 6 6 7 6 2 3 3 2 2

Z e n i t hZ 1 0 0 D S

4 a 0 0 2 0 0 O

0 9 0

f 0 f 0 4 0 0 0 0 0 0 4 5 2 3 3 3 2 4 5 2

Z e n i t hZ 1 0 0 S S

4 a 0 0 2 0 0 O

0 9 0 7

0 f

0 2 0 0 0 0 0 0 4 5 2 3 3 3 2 5 5 2

T R S - 8 0 J VS 4 a 0 0 2 0 0 0 0 9 0 3

0 c 0 1 0 0 0 0 0 0 5 5 5 2 4 5 2 2 2 2

L O B O m a S 3 9 0 0 2 0 0 0 0 a 0 3

0 c 0 1 0 0 0 0 0 1 4 6

6 6

2 2 2 2 2 2

4 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 50: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 50/84

C P / M 3 . 0 :P l u s R e d i r e c t i o na n B a t c h P r o c e s s i n g

A d a m H e r s tT o r o n t o , O n t a r i o

C o p y r i g h t 1 9 8 7 A d a m H e r s t

T h l a s t i t h l i n e a g e o C P / M f o b i c o m p u t e r s , C P / M 3 . w a e n d o w e d w i t h n a m e , C P / M P l u s , a l o n g w i t h i t i n h e r i t e d n u m b e r . T h i sa r t i c l e d e a l s w i t h o n o t h p l u s e s o C P / M P l u s , i n p u t / o u t p u t ( I / O )r e d i r e c t i o n a n b a t c h p r o c e s s i n g .

W a r c r e a t u r e s o h a b i t . I n t r o d u c e d t c o m p u t e r s y s t e m w i t h t h k e y b o a r d a t h i n p u t s o u r c e a n t h s c r e e n o p r i n t e r a s t h e o u t p u td e s t i n a t i o n , w a c c e p t t h i s c o n f i g u r a t i o n a s t h e n a t u r a l o r d e r . I i s n ' t .m o r e f l e x i b l e c o n c e p t i o n o a i n p u t s o u r c e a n d a n o u t p u t d e s t i n a t i o n i p o s s i b l e . T h f o l l o w i n g e x a m p l e i l l u s t r a t e s t h b e n e f i t s .

I y o u ' r e l i k e m e , y o u r c o l l e c t i o n o f p r o g r a m s h a s g r o w n f a b e y o n d y o u rc a p a c i t y t r e m e m b e r w h i c h f i l e s a r o w h i c h d i s k s . L a b e l l i n g t h e d i s k sw i t h t h e c o n t e n t s i a o b v i o u s s o l u t i o n . U s i n g t h D I c o m m a n d t o b t a i n l i s t o t h f i l e s o e a c h d i s k , t h e n p r i n t i n g i o n t o a l a b e l i t h s i m p l e s t p r o c e d u r e t o f o l l o w . B u t w a i t t p r i n t t h l a b e l f o r t h d i s ky o u ' l l h a v e t c o p y t h D I l i s t i n g d o w n b h a n d , e n t e r e a c h l i s t i n t ot e x t e d i t o r , f o r m a t t h f i l e f o p r i n t i n g a n t h e n p r i n t i o u t . T h e r e i b e t t e r w a y .

I t h o u t p u t f r o m t h D I c o m m a n d c o u l d b r e d i r e c t e d t d i s k f i l ei n s t e a d o t h e s c r e e n , t h e n y o w o u l d n ' t h a v e t c o p y d o w n a n r e - e n t e rt h i n f o r m a t i o n . I t h r e p e t i t i v e t e x t e d i t o r c o m m a n d s t f o r m a t t h el i s t i n g f o p r i n t i n g c o u l d b r e d i r e c t e d f r o m a d i s k f i l e i n s t e a d o t h k e y b o a r d t h e n y o w o u l d n ' t h a v e t t w e a k e a c h l i s t i n g b h a n d . I / r e d i r e c t i o n a l l o w s y o t d j u s t t h a t .

R e d i r e c t i o n i s t a n d a r d f e a t u r e i m o s t c u r r e n t o p e r a t i n g s y s t e m s . O S ' sa s v a r i e d a A m i g a D O S , M S - D O S a n U N I X p r o v i d e r e d i r e c t i o n c a p a b i l it i e s . R e d i r e c t i o n i c o m m o n l y p r o v i d e d a c o m m a n d l i n e o p t i o n t h r e d i r e c t i o n o p e r a t i o n i i n d i c a t e d o t h c o m m a n d l i n e a l o n g w i t h t h c o m m a n d i i t o a c t u p o n . E a r l i e r v e r s i o n s o C P / M i n c l u d e d l i m i t e dr e d i r e c t i o n a s o p t i o n s w i t h s p e c i f i c p r o g r a m s a n r e d i r e c t i o n o s c r e e no u t p u t t t h p r i n t e r t h r o u g h a t o g g l e o t h c o m m a n d l i n e . I c o n t r a s t ,C P / M P l u s , p r o v i d e s l i m i t e d i m p l e m e n t a t i o n o t r u e I / r e d i r e c t i o n i na d d i t i o n t t h e s e a h o c a p a b i l i t i e s .

T h s t a n d a r d n o t a t i o n t r e d i r e c t p r o g r a m o u t p u t t f i l e i s

c o m m a n d o u t p u L f i l e

t h s t a n d a r d n o t a t i o n t o r e d i r e c t p r o g r a m i n p u t f r o m f i l e i s

c o m m a n d i n p u U i l e

I s h o u l d n ' t s u r p r i s e y o t l e a r n t h a t C P / M P l u s d o e s n o u s t h s t a n d a r d c o m m a n d l i n e n o t a t i o n t i m p l e m e n t I / O r e d i r e c t i o n . I n s t e a d ,C P / M P l u s i m p l e m e n t s I / r e d i r e c t i o n w i t h t w u t i l i t y p r o g r a m s i n v o k e da c o m m a n d s i t h e m s e l v e s . T h e s e a r e : P U a n G E T .

P U

P U i t r a n s i e n t c o m m a n d i n v o k e d o t h c o m m a n d l i n e . I c a u s e s t h o u t p u t o s u b s e q u e n t p r o g r a m s t b r e d i r e c t e d t t h n a m e d d i s k f i l e .O u t p u t d e s t i n e d f o t h s c r e e n a n o u t p u t d e s t i n e d f o t h p r i n t e r c a n b ep l a c e d i f i l e w i t h t h P U c o m m a n d . S i n c e P U i t r a n s i e n tc o m m a n d i m u s t b e o l o g g e d - i n d i s k i a a c c e s s i b l e u s e r a r e a t b e x e c u t e d .

T h e r e a r f o u r v a r i a t i o n s o t h s y n t a x f o t h P U c o m m a n d . T w a r r e l a t e d t s c r e e n r e d i r e c t i o n w h i l e t h o t h e r p a i r i u s e d f o p r i n t e rr e d i r e c t i o n . T h s y n t a x t r e d i r e c t t h p r i n t e r o u t p u t o s u b s e q u e n tp r o g r a m s t f i l e i s

P U P R I N T E R O U T P U T T F I L E f i l e n a m e . t y p

T h i s c a b a b b r e v i a t e d t o

P U P R I N T E R F I L E f i l e n a m e

( T h i s a b b r e v i a t i o n h o l d s f o a l f o u r v a r i a t i o n s o P U a n w i l l b u s e d f o t h r e m a i n d e r o t h i s a r t i c l e . ) T h s y n t a x t r e s t o r e t h d i r e c t i o n o p r o g r a m o u t p u t t t h p r i n t e r i s

P U P R I N T E R P R I N T E R

T r e d i r e c t t h s c r e e n o u t p u t o s u b s e q u e n t p r o g r a m s t d i s k f i l e t h s y n t a x i s

P U C O N S O L E F I L E f i l e n a m e . t y p

( C O N S O L E , a b b r e v i a t e d t C O f o s o m e p r o g r a m s , i s p e c i a l n a m eC P / M u s e s t r e f e r t t h c o m b i n a t i o n o s c r e e n a n k e y b o a r d . W h e nu s e d i a o u t p u t c o n t e x t , i r e f e r s t o t h d i s p l a y s c r e e n . W h e n u s e d i a i n p u t c o n t e x t , i r e f e r s t o t h t e r m i n a l k e y b o a r d . ) T r e s t o r e t h d i r e c t i o no p r o g r a m o u t p u t t t h e s c r e e n , t h e s y n t a x i s

P U C O N S O L E C O N S O L E

B w a o e x a m p l e , t h e f o l l o w i n g c o m m a n d s m u s t b i s s u e d t r e d i r e c tt h e o u t p u t o t h D I c o m m a n d :

P U T C O N S O L E F I L E d i r . t x t

( S i n c e P U i t r a n s i e n t c o m m a n d , r e m e m b e r t h a v e t h f i l e P U T . C O Mo l o g g e d - i n d i s k i a a c c e s s i b l e u s e r a r e a . ) C P / M w i l l r e s p o n d w i t ht h m e s s a g e :

P u t t i n g c o n s o l e o u t p u t t f i l e d i r . t x tT h T r a n s a c t o r 4 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 51: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 51/84

n a t t e m p t d i s k a c c e s s t c r e a t e t h f i l e D I R . T X T . I f i l e b t h a t n a m eC P / M w i l l p r o m p t f o c o n f i r m a t i o n t o v e r w r i t e t h e e x i s t i n g f i l e .

w i t h ' n o ' a b o r t s t h P U c o m m a n d . W h e n t h e t h e c o m m a n dp r o m p t r e t u r n s , i s s u i n g t h c o m m a n d :

D I a

t h o u t p u t o t h D I p r o g r a m t t h f i l e D I R . T X T a s w e l l a s t t h

t h i s p o i n t , t h o u t p u t o s u b s e q u e n t l y i s s u e d c o m m a n d s a l s o w o u l d b et t h f i l e D I R . T X T . T d i r e c t t h e o u t p u t o s u b s e q u e n tt t h s c r e e n a n t c l o s e t h r e d i r e c t i o n f i l e , t h c o m m a n d :

P U C O N S O L E C O N S O L E

b i s s u e d . C P / M w i l l r e s p o n d w i t h :

P u t t i n g c o n s o l e o u t p u t t c o n s o l e

n c l o s e t h e o u t p u t r e d i r e c t i o n f i l e .

I y o h a w a n t e d t h e o u t p u t o t h D I c o m m a n d t g o n l y t t h f i l eD I R . T X T a n n o t t h s c r e e n a w e l l , P U T ' s N E C H O o p t i o n c o u l dh a v e b e e n u s e d . T h s y n t a x t i n c l u d e t h i s a n o t h e r P U o p t i o n s i s

P U C O N S O L E F I L E f i l e n a m e . t y p o p t i o n j i s t

N o t e t h s q u a r e b r a c k e t s s u r r o u n d i n g t h e o p t i o n l i s t . T h e s e m u s t b ei n c l u d e d o t h c o m m a n d l i n e . ) O t h e r o p t i o n s f o t h P U T c o m m a n di n c l u d e : E C H O , t h d e f a u l t , u s e d t r e s t o r e e c h o i n g a f t e r N E C H O ,F I L T E R , u s e d t t r a n s l a t e c o n t r o l c h a r a c t e r s i t h e o u t p u t s t r e a m i n t or e a d a b l e f o r m , N F I L T E R , t h d e f a u l t , u s e d t c a n c e l f i l t e r i n g a f t e rF I L T E R , a n S Y S T E M , u s e d t i n d i c a t e t h a t r e d i r e c t i o n s h o u l d o c c u ri m m e d i a t e l y a f t e r t h P U c o m m a n d a n i n c l u d e s y s t e m o u t p u t a s w e l la p r o g r a m o u t p u t .

n o t h e r , l e s s o b v i o u s u s o t h P U T c o m m a n d i t c r e a t e f i l e s o O l e n g t h . T h e s e f i l e s a r c r u c i a l t t h e o p e r a t i o n o c e r t a i n p r o g r a m st y p i c a l l y d i s k c a t a l o g u i n g p r o g r a m s t h a t r e q u i r e f i l e s o O l e n g t h t f u n c t i o n a s d i s k l a b e l s .

l i t t l e h i s t o r y i i o r d e r . E a r l i e r v e r s i o n s o C P / M , u t r e l e a s e 2 . 2 ,i n c l u d e d r e s i d e n t u t i l i t y n a m e d S A V E . M u c h l i k e t h t r a n s i e n t u t i l i t y o t h s a m e n a m e p r o v i d e d w i t h C P / M P l u s , t h e a r l i e r v e r s i o n a l l o w e d y o t s a v e b l o c k s o m e m o r y t d i s k . O n q u i r k i t h e o p e r a t i o n o t h i sc o m m a n d w a t h a b i l i t y t s a v e b l o c k s o m e m o r y , t h u s c r e a t i n g f i l eO i l e n g t h . T h i s q u i r k w a d i s c o v e r e d b n u m b e r o C P / M h a c k e r sa n i n c o r p o r a t e d i n t o p r o g r a m s t h a t r e q u i r e d t h e p r e s e n c e o O f i l e s .

T h m o d i f i c a t i o n s m a d e t S A V E i c r e a t i n g S A V E . C O M i n c l u d e d t h er e m o v a l o t h i s q u i r k . U s e r s o C P / M P l u s c a n n o t c r e a t e O f i l e s i n t h i sw a y . T h i s i n a b i l i t y h a g i v e n r i s e t t h p r a c t i c e o f d i s t r i b u t i n g O f i l e s o t h e d i s k s w i t h t h p r o g r a m s t h a t n e e d t h e m ! T h i s i s n ' t n e c e s s a r y . I r e m o v i n g t h c a p a b i l i t y f r o m o n c o m m a n d , t h p r o g r a m m e r s a D R i n t r o d u c e d i t k n o w i n g l y o n o t , i n t o a n o t h e r . P U c a b u s e d t c r e a t ef i l e O i l e n g t h . T c r e a t e O f i l e , r e d i r e c t o u t p u t t f i l e w i t h t h c o m m a n d :

P U C O N S O L E F I L E f i l e n a m e . t y p

W h e n t h p r o m p t r e t u r n s , i n s t e a d o i s s u i n g c o m m a n d , r e s t o r e t h d i r e c t i o n o o u t p u t t t h s c r e e n w i t h t h c o m m a n d :

P U C O N S O L E C O N S O L E

( I n t e r e s t i n g l y , C P / M r e s p o n d s w i t h :

P u c o m p l e t e f o f i l e : f i l e n a m e . t y pP u t t i n g c o n s o l e o u t p u t t c o n s o l e

S i n c e P U d o e s n o r e s p o n d w i t h t h f i r s t l i n e i o t h e r c a s e s i a p p e a r st h a t t h i s w a a a d d i t i o n t h a n d l e a e x c e p t i o n c o n d i t i o n . Y o c a a l m o s t s m e l l t h e p a s t e h o l d i n g t h i s p a t c h o n . ) Y o w i l l b l e f t w i t h f i l et h a t i O b y t e s i l e n g t h .

G E

G E i t r a n s i e n t c o m m a n d i n v o k e d o t h c o m m a n d l i n e t o r e d i r e c t t h i n p u t o s u b s e q u e n t p r o g r a m s f r o m a n a m e d d i s k f i l e . O n l y k e y b o a r di n p u t c a b r e d i r e c t e d u s i n g t h e G E c o m m a n d . T h i n p u t t t h p r o g r a m m u s t h a v e b e e n p r e v i o u s l y p l a c e d i t h f i l e . S i n c e G E i t r a n s i e n t c o m m a n d i m u s t b e o l o g g e d - i n d i s k i a a c c e s s i b l e u s e ra r e a t b e x e c u t e d .

A t h i s p o i n t i m a b h e l p f u l t d i f f e r e n t i a t e b e t w e e n t w o k i n d s o i n p u tt a p r o g r a m : c o m m a n d i n p u t a n d a t a i n p u t . P r a c t i c a l l y a l p r o g r a m s a r d e s i g n e d t a c c e p t c o m m a n d i n p u t f r o m t h k e y b o a r d a t h e i r d e f a u l t .d a t a b a s e m a n a g e m e n t s y s t e m i g o o d e x a m p l e . I m a n i p u l a t e s d a t aa c c o r d i n g t ' c o m m a n d ' i n p u t . I c o m m a n d s a r e n ' t e n t e r e d , n o t h i n gh a p p e n s . T h c o m m a n d s e n t e r e d c a u s e t h D B M S t a c o ' d a t a ' i n p u t .I t h e d a t a i n e d a t a , i m u s t b e e n t e r e d i n t o t h d a t a b a s e v i a t h ek e y b o a r d . T h G E c o m m a n d a l l o w s b o t h c o m m a n d i n p u t a n d a t ai n p u t t b t a k e n f r o m a d i s k f i l e .

T h s y n t a x t r e d i r e c t p r o g r a m o u t p u t w i t h t h G E c o m m a n d i s

G E C O N S O L E I N P U T F R O M F I L E f i l e n a m e . t y p

( U s e d i n t h i s c o n t e x t , r e l a t e d t o i n p u t , C O N S O L E r e f e r s t o t h t e r m i n a lk e y b o a r d . S i m i l a r t t h P U c o m m a n d , t h w o r d s C O N S O L E I N P U TF R O M c a b o m i t t e d a n t h s y n t a x a b b r e v i a t e d t o

G E F I L E f i l e n a m e . t y p

T h i s a b b r e v i a t i o n w i l l b u s e d f r o m n o o n . ) I s s u i n g t h G E c o m m a n dc a u s e s t h c o m m a n d i n p u t f o t h s u b s e q u e n t p r o g r a m t b t a k e n f r o mt h n a m e d f i l e . I i n o t n e c e s s a r y t i s s u e c o m m a n d t r e s t o r e t h d i r e c t i o n o i n p u t f r o m t h k e y b o a r d . T h e f f e c t s o t h G E c o m m a n d ,i s s u e d w i t h o u t o p t i o n s , w i l l e n i o n o t w c o n d i t i o n s . I t h r e d i r e c t e di n p u t e n d s t h p r o g r a m , t h e f f e c t s o G E w i l l e n w i t h t h s y s t e mp r o m p t . I t h p r o g r a m i n o t e r m i n a t e d , t h e f f e c t s o G E w i l l e n w i t ht h i n p u t r e d i r e c t i o n f i l e , l e a v i n g y o i t h p r o g r a m . I b o t h c a s e s , o t h e rp r o g r a m s o c o m m a n d s i t h i n p u t r e d i r e c t i o n f i l e , n o r m a l l y i s s u e d a t h s y s t e m p r o m p t , w i l l n o b e x e c u t e d .

T e x e c u t e s e r i e s o f c o m m a n d s f r o m d i s k f i l e , G E T ' s S Y S T E M o p t i o nc a b u s e d . T h s y n t a x f o G E w i t h o p t i o n s i s

G E C O N S O L E F I L E f i l e n a m e . t y p o p t i o n j i s t

( N o t e t h s q u a r e b r a c k e t s s u r r o u n d i n g t h e o p t i o n j i s t . T h e s e m u s t b i n c l u d e d o t h c o m m a n d l i n e . ) T h i s w i l l c a u s e a l s u b s e q u e n t i n p u t ,b o t h s y s t e m a n p r o g r a m , t b t a k e n f r o m t h n a m e d f i l e i m m e d i a t e l y .T h d i r e c t i o n o i n p u t f r o m t h k e y b o a r d w i l l b r e s t o r e d w h e n t h e n o t h e i n p u t r e d i r e c t i o n f i l e i s r e a c h e d o i n p u t d i r e c t i o n i e x p l i c i t l y r e s t o r e dt t h k e y b o a r d w i t h t h c o m m a n d :

T h T r a n s a c t o r 4 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 52: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 52/84

G E C O N S O L E C O N S O L E

W c a u s G E t a u t o m a t e t h e p r o c e s s o f o r m a t t i n g t h e d i r e c t o r yl i s t i n g ( p u t i n t o t h f i l e D I R . T X T i o u l a s t e x a m p l e ) f o r p r i n t i n g , i nc o m b i n a t i o n w i t h t h l i n e e d i t o r s u p p l i e d w i t h C P / M P l u s , E D ( s u m m a r y o E c o m m a n d s i a v a i l a b l e t h r o u g h t h e o n - l i n e H E L Pf a c i l i t i e s p r o v i d e d w i t h C P / M P l u s . I y o a r e t h i n k i n g o u s i n g E f o y o u r g e n e r a l e d i t i n g n e e d s , b e w a r n e d t h a t E i i n a d e q u a t e f o i n t e r a ct i v e , s c r e e n - o r i e n t e d t e x t e d i t i n g . I t i s , h o w e v e r , g o o d f o e d i t i n g a i n p u ts t r e a m i r e p e t i t i v e p a t t e r n . )

F i r s t w m u s t c r e a t e t h f i l e t h a t w i l l c o n t a i n t h e p r e d e t e r m i n e d i n p u t t E D P l a c e t h e f o l l o w i n g i n p u t l i n e s i n t o f i l e c a l l e d D I R X j E T :

1 : # a2 : 3 : 5 k4 : 5 m l 3 k f D J r e c t o r y A Z - 5 k6 : - b7 : - 3 k8 : 9 m f U s e r A Z - 4 c 0 k l - 2 c i A

1 0 1 1 : m f A L A Z - 2 c O I 4 O c i A L A Z I1 2 1 3 : # s A L A Z . A Z1 4 1 5 : m f U s e r A Z l i A A L A Z1 6 1 7 : m f A L A Z - 2 c O I 2 O c k i A L A Z1 8 : - b1 9 : j A L A L A L A L A Z

2 0 2 1 : m f A L A Z - 2 d l - 2 d l2 2 2 3 # s A L A Z . A Z2 4 2 5 m l f U s e r A Z - 4 c i A L A Z 6 0 c i A L A Z2 6 2 7 # s A L A L A Z A L A Z2 8 2 9 : m $ 1 f A L A Z i A L A Z3 0

O n c e y o h a v e c r e a t e d t h e f i l e D I R . G E T a n d h a v e p u t t h e d i r e c t o r y l i s t i n gi t h f i l e D I R . T X T , i s s u e t h c o m m a n d :

G E C O N S O L E F I L E D I R . G E T

( R e m e m b e r t h a v e t h f i l e s P U T . C O M a n D I R . G E T o n l o g g e d - i n d i s ki a c c e s s i b l e u s e r a r e a s . ) C P / M w i l l r e s p o n d w i t h t h m e s s a g e :

G e t t i n g c o n s o l e i n p u t f r o m f i l e d i r . g e t

I s s u i n g t h c o m m a n d :

E D D I R . T X T

w i l l i n v o k e E D c a u s i n g i t t a k e a s i t i n p u t t h c o m m a n d l i n e s i n t h f i l eD I R . G E T . ( R e m e m b e r t h a v e E D . C O M o l o g g e d - i n d i s k i a c c e s s i b l eu s e r a r e a s . ) W h e n t h e n o t h f i l e i s r e a c h e d , i n p u t w i l l b r e s t o r e d t t h k e y b o a r d . T h f i l e D I R . T X T w i l l b f o r m a t t e d a 6 c h a r a c t e r s t

l i n e , s u i t a b l e f o p r i n t i n g o l a b e l w i t h l i n e s p e l a b e l a 1 p i t c h ( 1 3 2c h a r a c t e r s t l i n e ) . T h c o m m a n d :

P I L S T : D I R . T X T

c a b u s e d t s e n d t h f i l e t p r i n t e r .

Y o m a h a v e n o t i c e d c o u p l e o p r o b l e m s w i t h o u r a u t o m a t i o n p r o c e s ss f a r / I t ' s n o v e r y f l e x i b l e t h e r e i n w a t a c c o u n t f o t h v a r i a t i o n si n l i n e s p a c i n g o l a b e l s . T h l i s t e d v e r s i o n e x p e c t s l a b e l s t h a t h o l d e i g h tl i n e s t l a b e l . M o r e p r o b l e m a t i c i t h p r e s e n c e o c o n t r o l c o d e s i t h i n p u t r e d i r e c t i o n f i l e f o E D T h e s e h a v e b e e n l i s t e d i s y m b o l i cr e p r e s e n t a t i o n r e q u i r i n g t w c h a r a c t e r s : t h e c a r e t ( A a n t h e a p p r o p r i a t ea l p h a b e t i c c h a r a c t e r . E w i l l n o a c c e p t c o n t r o l c o d e s i t h i s r e p r e s e n t at i o n . C o n t r o l c o d e s m u s t b e n t e r e d a t h e i r A S C I I v a l u e . W h i l e s o m e t e x te d i t o r s w i l l a l l o w y o t i n s e r t t h l i t e r a l c o n t r o l c o d e w i t h i n b o d y o t e x t , m o s t w o n ' t . T h i s m a k e s c r e a t i n g t h r e d i r e c t i o n i n p u t f i l e e x t r e m e l yd i f f i c u l t . F i n a l l y , w e ' v e o n l y a u t o m a t e d o n p a r t o t h p r o c e s s r e q u i r e d t p r o d u c e l a b e l o f d i s k d i r e c t o r y t h f o r m a t t i n g . T h e r e i n r e a s o nw h t h w h o l e p r o c e s s s h o u l d n ' t b a u t o m a t e d . F o r t u n a t e l y , C P / M P l u sp r o v i d e s b a t c h p r o c e s s i n g c a p a b i l i t i e s t h a t a r f u n c t i o n a l l y i d e n t i c a l t o b u t c o n s i d e r a b l y m o r e s o p h i s t i c a t e d t h a n t h c a p a b i l i t i e s o G E T . T h e s ea r a v a i l a b l e t h r o u g h t h S U B M I T c o m m a n d .

S U B M I T

S U B M I T i t r a n s i e n t c o m m a n d i n v o k e d o t h c o m m a n d l i n e t o r e d i r e c ts y s t e m a n d p r o g r a m i n p u t f r o m n a m e d f i l e . T h i s s o u n d s s i m i l a r t t h c a p a b i l i t i e s o f G E T . I i b u S U B M I T a p p r o a c h e s t h p r o b l e m f r o md i f f e r e n t p e r s p e c t i v e . W h i l e G E w a d e v e l o p e d t r e d i r e c t i n p u t f o s i n g l e p r o g r a m - t h c l a s s i c d e f i n i t i o n o f r e d i r e c t i o n S U B M I T w a d e v e l o p e d t e x e c u t e a s e r i e s o p r o g r a m s . G E e x p e c t s p r o g r a m i n p u t a si t d e f a u l t w h i l e S U B M I T e x p e c t s s y s t e m ( c o m m a n d l i n e ) i n p u t a s i t d e f a u l t . W h i l e b o t h c o m m a n d s h a v e e v o l v e d t a c c e p t b o t h k i n d s o i n p u t , t h c a p a b i l i t i e s o f S U B M I T p r o v i d e g r e a t e r f l e x i b i l i t y i t h f o r m o v a r i a b l e s u b s t i t u t i o n a n s y m b o l i c r e p r e s e n t a t i o n o c o n t r o l c o d e s a m o n go t h e r f e a t u r e s .

S U B M I T f i l e c o m p r i s e s s e r i e s o f c o m m a n d s o s e p a r a t e l i n e s ( i . e .f o l l o w e d b c a r r i a g e r e t u r n ) . I s s u i n g t h S U B M I T c o m m a n d c a u s e s t h e x e c u t i o n o t h c o m m a n d s i t h n a m e d s u b m i t f i l e . S i n c e S U B M I T i t r a n s i e n t c o m m a n d i m u s t b o l o g g e d - i n d i s k i a a c c e s s i b l e u s e ra r e a t b i n v o k e d . T i n v o k e S U B M I T , i s s u e t h c o m m a n d :

S U B M I T f i l e n a m e . s u b

T h e f f e c t s o t h S U B M I T c o m m a n d t e r m i n a t e w i t h t h e n o t h s u b m i t f i l e . T h e r e a r n o p t i o n s f o t h S U B M I T c o m m a n d . A t h i s p o i n t ,o n o S U B M I T ' s f e f u n c t i o n a l d i f f e r e n c e s f r o m G E b e c o m e s a p p a r e n t .G E r e d i r e c t s i n p u t d i r e c t l y f r o m t h i n p u t r e d i r e c t i o n f i l e . S U B M I Tr e d i r e c t s i n p u t f r o m a t e m p o r a r y f i l e c r e a t e d f r o m t h . S U B f i l e . F o t h i sr e a s o n t h e r e m u s t b e s u f f i c i e n t f r e e d i s k s p a c e o t h e c u r r e n t d i s k . I t h e r e i n o t , t h S U B M I T c o m m a n d w i l l a b o r t .

T b e g i n a u t o m a t i n g t h e d i s k l a b e l l i n g p r o c e s s , w c a c r e a t e a s u b m i tf i l e t p u t h o u t p u t f r o m t h D I c o m m a n d i n t o f i l e f o f o r m a t t i n g b E D C r e a t e t e x t f i l e c a l l e d D S K L A B E L . S U B c o n t a i n i n g t h l i n e s :

p u c o n s o l e f i l e d i r . t x td i r . t x t [ u s e r = a l l n o p a g e ]p u c o n s o l e

I s s u i n g t h c o m m a n d :T h T r a n s a c t o r 5 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e 0

Page 53: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 53/84

S U B M I T D S K L A B E L S U Bc a u s e e a c h l i n e i t h s u b m i t f i l e t b e e c h o e d o t h c o m m a n d l i n e

n e x e c u t e d . W h e n t h e n o t h s u b m i t f i l e i r e a c h e d , c o n t r o l r e t u r n st h s y s t e m p r o m p t . T h f i l e D I R . T X T w i l l c o n t a i n t h e d i r e c t o r y l i s t i n gb f o r m a t t e d .

i s t a n d s n o w , t h i s s u b m i t f i l e w i l l c r e a t e d i r e c t o r y l i s t i n g o t h d i s k . T l i s t t h d i r e c t o r y o a n o n - c u r r e n t d r i v e , w w o u l d h a v e

l o g - i n t o i b e f o r e i s s u i n g t h S U B M I T c o m m a n d . I w o u l d b e c o n v e ni w c o u l d s p e c i f y t h e d i s k w h i c h i t h a v e i t d i r e c t o r y l i s t e d o t h

l i n e w h e n w i s s u e t h S U B M I T c o m m a n d . T h p a r a m e t e rc a p a b i l i t y o S U B M I T a l l o w s u t d j u s t t h a t .

w i l l a c c e p t u t n i n e p a r a m e t e r s o t h c o m m a n d l i n e . E a c hr e p l a c e s i t c o r r e s p o n d i n g v a r i a b l e i t h s u b m i t f i l e . V a r i a b l e s

e t h e f o r m o d o l l a r s i g n f o l l o w e d b d i g i t f r o m o n t n i n e . T h f i r s ti s s u e d o t h c o m m a n d l i n e r e p l a c e s e v e r y o c c u r r e n c e o t h

l e ' $ 1 ' i t h s u b m i t f i l e , t h s e c o n d a r g u m e n t r e p l a c e s e v e r yo t h v a r i a b l e ' $ 2 ' a n s o u t ' $ 9 ' . ( T o i n c l u d e a a c t u a l

i s u b m i t f i l e , u s ' $ $ ' . )

p a s s t h e d r i v e s p e c i f i c a t i o n o t h e d i s k w h i c h i t h a v e i t d i r e c t o r yr e p l a c e t h s e c o n d l i n e o D S K L A B E L . S U B w i t h :

d i r $ 1 [ u s e r = a l l n o p a g e ]

o w h e n t h S U B M I T c o m m a n d i i s s u e d i c a t a k e t h e f o r m :

S U B M I D S K L A B E L d r i v e . s p e c i f I c a t i o n

d r i v e _ s p e c i f i c a t i o n i t h d r i v e l e t t e r f o l l o w e d b c o l o n ( e . g . a : ) . I d r i v e s p e c i f i c a t i o n i o m i t t e d o t h c o m m a n d l i n e , t h v a r i a b l e w i l l

r e p l a c e d b n u l l v a l u e a n t h d i r e c t o r y o t h l o g g e d - i n d i s k w i l l b

f a w h a v e a u t o m a t e d t h e , s e r i e s o c o m m a n d s t p r o d u c e t h l i s t i n g t b f o r m a t t e d . T f o r m a t t h l i s t i n g w d o n ' t n e e d t

s e r i e s o f c o m m a n d s , b u n e e d t o . e x e c u t e s i n g l e p r o g r a mt s e r i e s o f p r o g r a m c o m m a n d i n p u t l i n e s . T d i f f e r e n t i a t e

p r o g r a m s a n p r o g r a m c o m m a n d i n p u t l i n e s i n a s u b m i t f i l e ,c o m m a n d i n p u t l i n e s a r p r e c e d e d b l e f t a n g l e b r a c k e t ( < ) .

d t h l i n e s l i s t e d f o t h f i l e D I R . G E T t D S K L A B E L S U B , p r e c e d i n gw i t h l e f t a n g l e b r a c k e t . P r e c e d e t h e s e c o m m a n d i n p u t l i n e s w i t h

c o m m a n d E D C o n t r o l c o d e s c a b r e p r e s e n t e d s y m b o l i c a l l yw i l l t r a n s l a t e t h e m i n t o l i t e r a l f o r m b e f o r e p a s s i n g t h e m t E D

r e p r e s e n t r e a l c a r e t , ' A A > s h o u l d b u s e d . )

c a a c c o m m o d a t e t h v a r i a t i o n s i l i n e s p e l a b e l t h a t i l i k e l y t b e d u s i n g s e c o n d v a r i a b l e i t h s u b m i t f i l e . ( B e c a u s e t h l i n e s

l a b e l a r g u m e n t w i l l a l w a y s b p a s s e d t t h s u b m i t f i l e w w i l l u s v a r i a b l e ' $ 1 ' t r e p r e s e n t i t C o n s e q u e n t l y , t h v a r i a b l e r e p r e s e n t i n gd r i v e s p e c i f i c a t i o n m u s t b e c h a n g e d t ' $ 2 * . S i n c e t h e d r i v e s p e c i f i c a

i t h l a s t a r g u m e n t o t h c o m m a n d l i n e , i c a s t i l l b o m i t t e d t n e f f e c t . ) F i n a l l y , w c a a d l i n e t t h s u b m i t f i l e i n v o k i n g P I t s e n d

f o r m a t t e d d i r e c t o r y l i s t i n g t t h p r i n t e r .

h c o m p l e t e D S K L A B E L S U B f i l e l o o k s l i k e :

1 e r a s e d i r . t x t2 p u c o n s o l e f i l e d i r . t x t [ n e c h o ]3 : d i r $ 2 [ u s e r a l n o p a g e ]4 p u c o n s o l e

a L a Z

5 e d i r . t x t6 : < # a7 : < b8 < 5 9 : < b

1 0 : < m l 3 k f D i r e c t o r y A Z - 5 k1 1 < - 1 2 : < - 3 k1 3 < 1 4 : < m f U s e r A Z - 4 c 0 k l - 2 c i1 5 : < b1 6 < m f A L A Z - 2 c O I 4 O c i A L A Z I1 7 : < b1 8 : < # s A L A Z . A Z1 9 < 2 0 : < m f l l s e r A Z l i A L 2 1 : < b2 2 < m f A L A Z - 2 c O I 2 O c k i A L A Z2 3 < - 2 4 < i A L A L A L A L A Z2 5 < 2 6 < m f A L A Z - 2 d l - 2 d l2 7 < 2 8 < # s A L / Z . A Z2 9 < 3 0 < m l f U s e r A Z - 4 c i A L A Z 6 0 c i A L A Z3 1 : < b3 2 < m f A L A L A Z A L A Z3 3 < 3 4 : < m $ 1 f A L A Z i A L A Z3 5 < 3 6 : p i p 1 s t : d i r . t x t

( T h e e x a c t n u m b e r o p e r i o d s i n l i n e s 1 a n d 2 0 i n o t i m p o r t a n t t h e r es h o u l d b a t l e a s t 4 i n l i n e 1 a n 2 i e a c h o t h s t r i n g s i n l i n e 2 0 T h i s S U B M I T f i l e g e n e r a t e s l a b e l s f r o m d i r e c t o r i e s t h a t d n o h a v e a c t i v et i m e / d a t e s t a m p i n g . I y o u s t i m e / d a t e s t a m p i n g o m i t l i n e s 1 a n 1 6 . )

T i n v o k e D S K L A B E L i s s u e t h c o m m a n d :

S U B M I T D S K L A B E L l a b e l s _ p e r j i n e d r i v e _ s p e c i f i c a t i o n

W h e r e l a b e l s _ p e r J i n e i a i n t e g e r , d r i v e _ s p e c i f i c a t i o n i l e t t e r f o l o w e d b c o l o n r e p r e s e n t i n g d i s k d r i v e . T c r e a t e l a b e l s w i t h l i n e sp e l a b e l o t h e d i s k i n d r i v e M : , t h c o m m a n d :

S U B M I T D S K L A B E L m

s h o u l d b i s s u e d . ( T h e d r i v e s p e c i f i c a t i o n a r g u m e n t m a b o m i t t e dr e s u l t i n g i l i s t i n g o t h e c u r r e n t d r i v e , b u t h l a b e l s p e l i n e a r g u m e n tm u s t b e p r o v i d e d . F a i l u r e t d s w i l l r e s u l t i t h d o u b l e s p a c i n g o t h D I R . T X T f i l e . ) B e f o r e i s s u i n g t h e S U B M I T c o m m a n d , r e m e m b e r t o s e ty o u r p r i n t e r o n - l i n e r e a d y t o p r i n t a 9 o 1 3 c h a r a c t e r s p e l i n e .

T h r e d i r e c t i o n a n b a t c h p r o c e s s i n g c a p a b i l i t i e s o C P / M 3 . a r e n o ti d e a l . T h i m p l e m e n t a t i o n o r e d i r e c t i o n i t h f o r m o f r e e - s t a n d i n gp r o g r a m s i c l u m s y a n u n i n t u i t i v e , a l t h o u g h i d o e s a l l o w f o t h p r e s e n c e o c o m m a n d l i n e o p t i o n s . T h a b s e n c e o t r u e v a r i a b l e s a n f l o w o c o n t r o l o p e r a t o r s i t h S U B M I T e n v i r o n m e n t r e s t r i c t s i t u s e f u ln e s s . N o n e t h e l e s s , t h e s e ' p l u s e s ' a r v a s t i m p r o v e m e n t o v e r C P / M 3 . 0 ' sp r e d e c e s s o r s a n d , i c o m b i n a t i o n w i t h t h e s t a n d a r d ' t o o l s ' p r o v i d e d i t h C P / M e n v i r o n m e n t , o f f e r a o p p o r t u n i t y t s i g n i f i c a n t l y e x t e n d t h p o w e r a n u s e f u l n e s s o t h e C - 1 2 8 .

h T r a n s a c t o r 5 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 54: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 54/84

S q u a r e R o o t si M a c h i n e L a n g u a g e

J i B u t t e r f i e l dT o r o n t o , O n t a r i o

. . R e m e m b e r t h o s e m a n u a l s q u a r e r o o t s ? . . .

T h e r e a r e q u i t e f e w a y s o d o i n g s q u a r e r o o t s . B a s i c d o e s t h j o b v i a t h e x p o n e n t i a l / l o g a r i t h m f u n c t i o n s . O t h e r m e t h o d s u s s u c e s s i v e a p p r o x i m a t i o n : e s t i m a t e f i r s t v a l u e o t h r o o t , a n t h e n i m p r o v e i t T h u s u a l f o r m u l a o t h i s l a s t i s

n e r o o t ( o l d r o o t v a l g e / o l d r o o t ) / 2B u t h e r e i f a s t , d i r e c t m e t h o d . I m a o n l y b w o r t h t h c o d i n g e f f o r t i y o h a v e p r o g r a m w h i c h p e r f o r m s l a r g en u m b e r o s q u a r e r o o t c a l c u l a t i o n s . Y o m i g h t f i n d i i n t e r e s t i n gt t r a c e t h r o u g h . I t ' s v e r y m u c h l i k e t h s q u a r e r o o t s y o u s e d t d m a n u a l l y i s c h o o l .

R e m e m b e r t h o s e m a n u a l s q u a r e r o o t s ? T h e y w o r k e d s o m e t h i n gl i k e t h i s :

p a i r o f t h d i g i t s i n t o s e t s o f t w o ;b r i n g d o w n p a i r s o f d i g i t s a t a t i m e f o t r i a l " r o o t " ;t a k e t h r o o t s f a r , t i m e s 2 a t h " m u l t i p l i e r " . . .

. . b u t i t ' s e a s i e r t s h o w i a e x a m p l e . L e t ' s t a k e t h e r o o t o 3 4 5 6 7 . W p a i r o f t h d i g i t s a n t r f o r o o t o 3

4 5 6 7 ( 1

I m u s t b e o n e , s i n c e 2 x 2 w o u l d b e 4 a n t h a t ' s g r e a t e r t h a n 3 ( I t h i s c o m i n g b a c k t y o n o w ? ) B r i n g d o w n t h n e x t t w d i g i t s , a n d o u b l e t h r o o t s f a t m a k e " m u l t i p l i e r " ( t i m e s

i 2 )

4 6

2 . 4 5

(

F o r t h e n e x t d i g i t , w m i g h t t r t i m e s 2 9 t i m e s 2 8 . . . t h a to n e s w o r k s . I g i v e s 2 2 4 , w h i c h i l e s s t h a n 2 4 5 . S w s u b t r a c ta n r e p e a t :

2

3

4 5 6 7 ( 1

4 2

2 6

N o t e t h a t t h n e m u l t i p l i e r i 1 t i m e s 2 o 3 6 t i m e s 3 6 i m u c h t o b i g , s w g o t h r o u g h 8 t i m e s 3 6 8 , t i m e s 3 6 7 , 6 t i m e s3 6 ( a l m o s t ! ) a n f i n a l l y s e t t l e o 5

4 5 6 7 ( 1 8 5

2

3 6

4 2

2 6 1 2

4

T h e r e ' s h e f t y r e m a i n d e r ; w c o u l d c o n t i n u e i n t o f r a c t i o n s , b u l e t ' s l e a v e t h r e s u l t a i f o t h m o m e n t : t h r o o t o 3 4 5 6 7 i 1 8 p l u s a r e m a i n d e r .

W c a n d o a l t h i s i b i n a r y , a n i b e c o m e s m u c h e a s i e r . S i n c ee a c h d i g i t w i l l b e i t h e r o 1 o u c h o i c e i t s u b t r a c t ( 1 o r n o tt s u b t r a c t ( 0 ) .

L e t ' s g d i r e c t l y t t h m e t h o d . W e ' l l i l l u s t r a t e i g r a p h i c a l l y .P l a c e t h e v a l u e i w o r k a r e a , a n p u a " r e m a i n d e r " b u f f e rf i l l e d w i t h z e r o s a t h h i g h e n d . S e t h r o o t t z e r o :

R E M A I N D E R V A L U E : R O O T :: 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0 1 1 1 1 0 0 1 : : 0 0 0 0 0 0 :

F o r t h e s a k e o t h e x a m p l e , w e ' l l p u a v a l u e o 1 2 1 ( b i n a r y0 1 1 1 1 0 0 1 ) i n t o t h v a l u e . H o p e f u l l y , t h r e s u l t w i l l b 1 ( b i n a r y1 0 1 1 ) .

T h T r a n s a c t o r 5 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 55: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 55/84

t w d i g i t s t h a t m e a n s t w b i t s i b i n a r y t u r n s . W d s h i f t l e f t " o t h R E M A I N D E R / V A L U E c o m b i n a t i o n . S i n c e

r e g o i n g t t h n e x t " r e s u l t " d i g i t , w e ' l l s h i f t t h R O O T o n l e f t , t o o :

R E M A I N D E R : V A L U E : R O O T :: 0 0 0 0 0 0 0 0 0 0 0 0 1 : l 1 1 0 0 1 . . : : 0 0 0 0 0 0 :

o m u l t i p l i e r , w t a k e R O O T * 2 ( s a m e a s t h e d e c i m a l m e t h o d ) ,i R O O T s h i f t e d b o n m o r e p o s i t i o n . W a d t t r

b 1 "

R E M A I N D E R V A L U E: 0 0 0 0 0 0 0 0 0 0 0 0 1 : l 1 1 0 Q 1 . .

. R O O T : : M U L T :: 0 0 0 0 0 0 : : 0 0 0 0 0 1 :

g , w f i n d t h a t M U L T i N O g r e a t e r t h a n r e m a i n d e r .w i n c r e m e n t R O O T a n s u b t r a c t M U L T f r o m R E M A I N D E R .

g i v e s :

R E M A I N D E R V A L U E : R O O T :: 0 0 0 0 0 0 0 0 0 0 0 0 0 : l 1 1 0 0 1 . . : : 0 0 0 0 0 1 : '

t t h n e x t p a i r o b i t s . A b e f o r e , a d o u b l e l e f t s h i f t t a n s i n g l e s h i f t t R O O T . W e ' l l c a l c u l a t e

n e M U L T a t h s a m e t i m e :

R E M A I N D E R V A L U E : R O O T : M U L T: 0 0 0 0 0 0 0 0 0 0 0 1 1 : 1 0 0 1 : 0 0 0 0 1 0 : : 0 0 0 1 0 1 :

e h o M U L T i R O O T t i m e s 2 p l u s 1 W e l l , M U L T i b i g g e rR E M A I N D E R t h i s t i m e , s w s k i p t t h n e x t s t e p w i t h

s h i f t :

R E M A I N D E R V A L U E : R O O T : M U L T: 0 0 0 0 0 0 0 0 0 1 1 1 0 : 0 1 : 0 0 0 1 . 0 0 : : 0 0 1 0 0 1 :

i p r e t t y b i g , b u R E M A I N D E R i b i g g e r , s w d o u o s u b t r a c t i o n :

R E M A I N D E R V A L U E R O O T : M U L T: 0 0 0 0 0 0 0 0 0 0 1 0 1 : 0 1 : 0 0 0 1 0 1 : : 0 0 1 0 0 1 :

c o m e s t h l a s t s t e p . . w e ' r e s h i f t i n g t h l a s t t w b i t s o I w w e n t b e y o n d t h i s p o i n t , w e ' d b e i n t o f r a c t i o n s . H e r e

R E M A I N D E R V A L U E : R O O T : M U L T: 0 0 0 0 0 0 0 0 1 0 1 0 1 : : 0 0 1 0 1 0 : . 0 1 0 1 0 1 :

i e q u a l t R E M A I N D E R , s w s u b t r a c t a n i n c r e m e n t

R E M A I N D E R V A L U E : R O O T :: 0 0 0 0 0 0 0 0 0 0 0 0 0 : : 0 0 1 0 1 1 :

W e ' r e f i n i s h e d . T h R O O T i 1 0 1 1 ( d e c i m a l 1 1 a n t h r e m a i nd e i z e r o ( c o r r e c t ! )

I t ' s i m p o r t a n t t p r o v i d e t h e r i g h t a m o u n t o s p a c e f o t h e v a r i o u sn u m b e r s s u c h a R E M A I N D E R a n M U L T . I t ' s m o r e t h a n y o m a t h i n k a f i r s t .

F o e x a m p l e : s u p p o s e w e ' r e d o i n g t h r o o t o a u n s i g n e d t w o -b y t e n u m b e r ( t h e r a n g e i f r o m t 6 5 5 3 5 ) I t ' s p l a i n t h a t a i n t e g e r r e s u l t w i l l f i i n t o o n b y t e ( r a n g e t 2 5 5 ) s o l o n g a w d o n ' t n e e d t r o u n d i t H o b i m i g h t t h r e m a i n d e r b e W e l l ,t h b i g g e s t r e m a i n d e r w o u l d b f o S Q R ( 6 5 5 3 5 ) . I y o u w o r k t h a to u t , i t ' s 5 1 0 , w h i c h m e a n s t h a t n i n e b i t s a r n e e d e d . B u w a i t !T h a t ' s t h e r e m a i n d e r A F T E R t h l a s t s u b t r a c t i o n ; b e f o r e t h a t ,t h e v a l u e i R E M A I N D E R w a 1 0 1 9 . . , t e n - b i t t e r .

I e i t h e r c a s e , t w b y t e s a r e n e e d e d i t h i s e x a m p l e , f o b o t hR E M A I N D E R a n M U L T . T h a t m e a n s w m u s t d a t w o - b y t ec o m p a r i s o n , a n a t w o - b y t e s u b t r a c t i o n w h e n n e e d e d . D o n ' to v e r l o o k t h o s e e x t r a b i t s o y o u ' l l g e w r o n g a n s w e r s .

T d e m o n s t r a t e t h m e t h o d , p r o g r a m R O O T S 6 4 d o e s s i m p l es q u a r e r o o t s . T k e e p t h i n g s a t h e i r s i m p l e s t , t h p r o g r a m d o e si n t e g e r s o n l y a n u s e s o n l y s i n g l e - b y t e a r e a s f o R E M A I N D E Ra n M U L T . A r e s u l t , w e ' d b e t t e r k e e p o u v a l u e s i t h r a n g eo t 4 0 9 6 . T h a t w i l l a l l o w u s t k e e p R E M A I N D E R a n M U L Tw i t h i n s i n g l e b y t e .

O n c e y o k n o w t h p r i n c i p l e s , i t ' s e a s y t e x p a n d t h m e t h o d t c o v e r b i g g e r n u m b e r s , f r a c t i o n s , o w h a t e v e r f i t s y o u r o b j e ct i v e s .

B B H M L M N B F M H L J

F C O G

C F

L A P C

1 0 v r n d ( 0 ) : r e m . . t h i s m u s t b f i r s t1 1 d a t a 1 6 0 , 2 , 1 7 7 , 4 5 , 1 4 1 , 1 6 1 ,1 2 d a t a 0 , 1 4 5 , 4 5 , 2 0 0 , 1 7 7 , 4 5 1 3 d a t a 3 , 1 6 0 , 0 , 1 4 0 , 1 6 0 , 3 1 4 d a t a 3 1 4 , 1 6 2 , 3 4 6 , 1 6 1 ,1 5 d a t a 1 6 0 , 3 1 4 , 1 6 2 , 3 4 6 1 6 d a t a 4 6 , 1 6 0 , 3 1 4 , 1 6 3 , 3 1 7 d a t a 3 1 0 , 1 7 0 , 2 3 2 , 1 4 2 , 1 6 4 ,1 8 d a t a 1 6 0 , 3 2 0 5 , 1 6 4 , 3 , 1 4 4 ,1 9 d a t a 1 6 3 , 3 , 2 3 7 , 1 6 4 , 3 , 1 4 1 ,2 0 d a t a 2 0 0 , 1 9 2 , 8 2 0 8 , 2 0 4 , 1 6 0 ,2 1 d a t a 1 6 3 , 3 , 1 4 5 , 4 5 9 2 2 f o 8 2 t 9 1 2 3 r e a d x : t = x p o k e j , x2 4 n e x t2 5 i t < > 8 5 5 4 t h e n s t o p2 6 r e t e s t r u s t a r t s h e r e2 7 f o t 1 2 8 0 v ' = i n t ( m d ( 1 ) * 4 0 9 6 )2 9 O v ° / o3 0 s y 8 2 3 1 p r i n t " t h e r o o t o f " ; v ; " i s " ; v %3 2 n e x t

3 , 1 6 91 4 1 , 1 6 21 4 0 , 1 6 3

3 4 1 6 1 ,1 7 3 , 1 6 3

3 , 1 7 39 , 2 3 8

1 6 0 ,3 , 1 7 3

h T r a n s a c t o r 5 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 56: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 56/84

P L A C E H O L D E Rf o t h C o m m o d o r e 6

P a u l B l a i rH o l d e r , A u s t r a l i a

I a v e r y e a r l y T r a n s a c t o r , J i B u t t e r f i e l d p r e s e n t e d a v e r y h a n d yr o u t i n e t c o p e w i t h p e r e n n i a l s c r e e n h a n d l i n g t a s k . T h p r o g r a mw a d e s i g n e d t a l l o w y o t r e m e m b e r t h l o c a t i o n o s c r e e nw h e r e y o l a s t p r i n t e d , s t h a t y o c o u l d g s o m e p l a c e e l s e t p r i n ts o m e t h i n g e l s e , t h e n r e t u r n t w h e r e y o l e f t o f f .

T h s o r t o t a s k s t h a t s p r i n g t m i n d f o r t h i s s o r t o r o u t i n e w o u l di n c l u d e e r r o r m e s s a g e s o c o n t i n u e p r o m p t s . I i c o n s i d e r e d g o o dd e s i g n t h e l p a o p e r a t o r b a l w a y s p u t t i n g h e l p m e s s a g e s a s o m ef i x e d p l a c e o t h e s c r e e n , a n t h b o t t o m l i n e i f a v o u r i t e s p o t .

S o y o u m a p r i n t o l i n e 2

E N T E R D A T E [ M M / D D / Y Y ] :

a n h a v e c h e c k b u i l t i n t h a t M h a t b e b e t w e e n a n 1 2 I t h o p e r a t o r e n t e r s " 1 3 ° , i w o u l d b n i c e t r e m i n d h o s h t h a t a n v a l u e o u t s i d e t h 1 - 1 2 r a n g e c a n n o t b a c c e p t e d . q u i c k p r i n t t t h b o t t o m l i n e " P L E A S E E N T E R 1 - 1 2 " w o u l d b e c o u r t e o u s a n h e l p f u l .

r e c e n t l y h a t a r r a n g e t h i s s o r t o f t h i n g f r o m w i t h i n m a c h i n ec o d e p r o g r a m . S o n e e d e d s h o r t r o u t i n e t d t h w o r k f o m e P L A C E , t h e x t r a c t f r o m t h a t p r o g r a m , s h o w s h o i w a a c h i e v e d .

B e c a u s e t h C o m m o d o r e 6 i s c r a m m e d w i t h u s e f u l i t e m s , i i e a s y t o v e r l o o k t h p o s s i b i l i t y t h a t i m a b e a s i e r t u s r o u t i n es e u f o u b C o m m o d o r e t h a n t d e s i g n o u o w n . S u c h w a t h c a s e h e r e , b e c a u s e h a o v e r l o o k e d t h P L O T r o u t i n e w r i t t e n b C o m m o d o r e t p e r m i t a s o r t o f P R I N T ® o t h s c r e e n .

P L O T s e e m e d u s e f u l t l o c a t e t t h s c r e e n , b u P L O T h a t w s i d e st i t f a c t r e d i s c o v e r e d w h e n r e - r e a d t h e r e f e r e n c e b o o k s ,s o m e t h i n g w s h o u l d a l d o f r o m t i m e t t i m e ! ! P L O T c a n o o n l ys e t h e c u r s o r a n y w h e r e o t h s c r e e n , b u i c a a l s o w o r k o u w h e r e t h c u r s o r i a a n t i m e . B u s i n g P L O T t r e a d t h s c r e e na n r e m e m b e r w h a t i s e e s , i i e a s y t d u c k o f t t h b o t t o m l i n e( u s i n g P L O T t o g e t t h e r e ) , t h e n r e c a l l w h e n c e t h e c u r s o r c a m e a n g o b a c k t h e r e f o w h a t e v e r i t h a p p e n n e x t .

T h K e r n a l a d d r e s s f o P L O T i $ F F F 0 ( o 6 5 5 2 0 i d e c i m a l ) . T h K e r n a l i t h i n d e x t t h e l o c a t i o n o t h a c t u a l r o u t i n e , w h i c h l i v e sa $ E 5 0 A ( 5 8 6 3 4 ) . M h a b i t i t u s t h K e r n a l a d d r e s s e s , b e c a u s et h e y m i g h t j u s t s t a y i t h s a m e p l a c e i w h a t e v e r m a c h i n e c o m e sn e x t , w h e r e a s c a b e m w i f e ' s l a s t d o l l a r t h a t t h a c t u a l r o u t i n ew i l l h a v e m o v e d .

L e t ' s l o o k a m m a c h i n e c o d e f i r s t . T R E A D t h s c r e e n w i t h P L O T ,i i n e c e s s a r y o n l y t o s e t t h e c a r r y f l a g ( S E C i t h i n s t r u c t i o n ) a n c a l l P L O T . T h a n c u r s o r p o s i t i o n s ( a c r o s s a n d o w n , i y o l i k e ) w i l l b i t h a n r e g i s t e r s w h e n P L O T f i n i s h e s i t j o b .S t o r e t h e s e v a l u e s i h a n d y p l a c e ( m o v e t h e m t p r o t e c t e d

l o c a t i o n ) o p u s h t h e m o n t o t h e s t a c k , a n w n o k n o w w h e r e w h a v e c o m e f r o m .

N o w , l o a d w i t h t h • a c r o s s " v a l u e a n w i t h t h " d o w n " v a l u e ,a n g o b a c k t P L O T . P r i n t t h m e s s a g e y o u n e e d , t h e n ( i n t h i se x a m p l e ) w a i t f o a k e y p r e s s b e f o r e c o n t i n u i n g o n W h e n , t h k e y p r e s s c o m e s , r e c o v e r t h o l v a l u e s , l o a d t h e m i t h a n r e g i s t e r s , a n P L O T a g a i n . N o y o a r b a c k t w h e r e y o l e f t o f f .

T h r o u t i n e l o o k s l i k e t h i s :

F N J F I

O I I

M L J L C O H C A

E L

I E F K

P J E E 1

K M O A J I

O A O

F B G F

1 0 0 r e m s a v e " @ 0 : p l a c e . p a l "1 1 o p e n 8 , 8 , 8 , " O : p l a c e . o b j , p , w1 2 0 s y s 7 0 01 3 . o p t 0 1 4 0 ; / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /1 5 0 ; / / / 1 6 0 ; / / m a c h i n e c o d e p l a c e h o l d e r / 1 7 0 ; / / f o c o m m o d o r e 6 / 1 8 0 ; / / / 1 9 0 ; / / r o u t i n e t h o l d s c r e e n / 2 0 0 ; / / p l a c e , p r i n t m e s s a g e o / 2 1 0 ; / / l a s t l i n e , t h e n r e t u r n / 2 2 0 ; / / w h e n c e t h e e c a m e / 2 3 0 ; / / / 2 4 0 ; / / m a 8 p a u l b l a i r / 2 5 0 ; / / / 2 6 0 ; / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /2 7 0 ;2 8 0 ; / / c 6 b a s i c 2 . 0 r o u t i n e s / 2 9 0 ;

= $ d 0 2 0 ; e x t e r i o r c o l o u r$ e 9 f f ; e r a s e l i n e i . $ f f d 2 ; p r i n t c h a r$ f f e 4 ; g e t k e $ f f f O ; s c r e e n r o u t i n e

3 0 b o r d e r3 1 c l e a n3 2 c h r o u t3 3 g e t i n3 4 p l o t3 5 0 ;3 6 0 ; / / m a i n p r o g r a m / 3 7 0 ;3 8 $ c 0 0 03 9 0 ;4 0 0 ; / / e r r o r m e s s a g e f l i p b o r d e r / 4 1 0 ;4 2 0 o h d e a r I d # $ 0 24 3 s t b o r d e r4 4 s e 4 5 j s p l o t4 6 t x 4 7 0 p h a4 8 t y 4 9 0 p h a5 0 c l

; s y s 4 9 1 5 2 c a l l s

; v i s u a l e r r o r

; g e t o u p l a c e; b y ' r e a d i n g s c r e e n; f o r x v a l u e s; p u s h t h e m a w a y; f o r l a t e r u s ; s e t n e l o c a t i o n

T h T r a n s a c t o r 5 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e 0

Page 57: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 57/84

C M

F M G L I

B E N E N O E D P K O

I N M H H G

H E P

K K

A A E M L I

5 1 I d # $ 0 c. 5 2 0 I d # $ 1 8

5 3 j s p l o t

; 1 2 o v e r; 2 d o w n; p u t c u r s o r t h e r e

5 4 I d # > c e r m s g ; p r i n t m e s s a g e5 5 I d # < c e r m s g ; m a y b e a d 5 6 j s p r i m m s5 7 k e y p l s j s g e t i n5 8 0 b e q k e y p l s5 9 I d # $ 1 86 0 j s c l e a n6 1 I d # $ 0 f6 2 s t b o r d e r6 3 p l 6 4 t a 6 5 p l 6 6 t a 6 7 c i 6 8 j m p l o t6 9 0 ;7 0 0 ; / / p r i n t m e s s a g e s / 7 1 0 ;7 2 0 p r i m m s s t $ 5 7 3 s t $ 5 7 4 I d # $ 0 07 5 0 p r i m m 2 I d ( $ 5 c ) , y7 6 b e p r i m m 37 7 j s c h r o u t7 8 i n 7 9 0 b n e p r i m m 28 0 0 p r i m m 3 r t 8 1 0 ;8 2 0 ; / / m e s s a g e / /8 3 0 ;8 4 0 c e r m s g . b y t $ 1 2 : . a s c8 5 . b y t $ 9 2 , $ 0 0 .8 6 . e n d

; " t o n e h e r e t o o ?; w a i t k e ; l o o p i n k e ; e r a s e m e s s a g e; o b o t t o m l i n e; r e s e t b o r d e r c o l o u r; t n o r m a l

; r e c a l l w h e r e y o ; w e r e b e f o r e

; a n d g t h e r e; ( r t s )

; p o i n t t o m e s s a g e

; c o u n t e r; g e t c h a r

i z e r o , e n p r i n t i ; i n c i n d e x; l o o p b a c k; a l l d o n e

p r e s s a n k e

B a s i c p r o g r a m t l o a d t h e c o d e , t h e n g i v e v e r y s i m p l ew o u l d b h a n d y .

N C F F A N E D A D K P J L

G G G

1 0 r e m : p l a c e h o l d e r e x a m p l e1 1 r e m : f i r s t l o a d d a t a i n t o $ c 0 0 01 2 r e m : t h e n s h o w o f 1 3 r e m : p a u l b l a i r 5 / 8 51 4 0 :1 5 g o t o 3 3 1 6 0 m 5 3 2 8 0 : r t = 4 9 1 5 2 :1 7 p o k e m 1 5 p o k e +

p r i n t c h r $ ( 3 1 )1 , 1 5

1 8 p r i n t " [ C L R ] t e s t p l a c e h o l d e r " : s y r 1 9 p r i n t : p r i n t ' h e l l o t h e r e ! " ; g o s u b 2 9 2 0 p r i n t ' f r o m t r a n s a c t o r m a g a z i n e " : g o s u b 2 9 2 1 p r i n t : p r i n t : p r i n f a s y o u c a n s e e , " ; : g o s u b 2 9 02 2 p r i n t ' s c r e e n c o n t r o l i e a s y " : g o s u b 2 9 02 3 p r i n t : p r i n t : p r i n t "

g o s u b 2 9 02 4 p r i n t : p r i n t : p r i n t : p r i n t :

g o s u b 2 9 2 5 p r i n t : p r i n t " h a v e f u n ! ! " ; :

n o i ' h e r e "

p r i n f n o w d o w n h e r e "

g o s u b 2 9 2 6 p r i n t " h a v e f u n ! ! " ; : g o s u b 2 9 0

h T r a n s a c t o r

O M

J A F E G B N P

G G G M L P M L

M G D H

2 7 p r i n t " h a v e f u n ! ! " : g o s u b 2 9 0 : e n 2 8 2 9 f o d e l a y t 1 0 0 0 : n e x t : s y r t r e t u r n3 0 0 :3 1 r e m : l o a d m / i n t o $ c 0 0 03 2 3 3 4 9 1 5 2 : 4 9 2 3 73 4 f o t f r e a d a c c a p o k e i , a n e x t3 5 i c s < > 1 0 2 8 6 t h e n p r i n t " e r r o r " : e n 3 6 c l r : g o t o 1 6 3 7 3 8 d a t a 1 6 9 , 2 , 1 4 1 , 3 2 , 2 0 8 , 5 6 3 2 , 2 4 03 9 d a t a 2 5 5 , 1 3 8 , 7 2 , 1 5 2 , 7 2 2 4 , 1 6 0 , 1 24 0 d a t a 1 6 2 , 2 4 , 3 2 , 2 4 0 , 2 5 5 , 1 6 0 , 1 9 2 , 1 6 94 1 d a t a 6 8 , 3 2 , 5 1 , 1 9 2 , 3 2 , 2 2 8 , 2 5 5 , 2 4 04 2 d a t a 2 5 1 , 1 6 2 , 2 4 3 2 , 2 5 5 , 2 3 3 , 1 6 9 , 1 4 3 d a t a 1 4 1 , 3 2 , 2 0 8 , 1 0 4 , 1 6 8 , 1 0 4 , 1 7 0 , 2 4 4 d a t a 7 6 , 2 4 0 , 2 5 5 , 1 3 2 , 9 3 , 1 3 3 , 9 2 , 1 6 04 5 d a t a 0 , 1 7 7 , 9 2 , 2 4 0 , 6 3 2 , 2 1 0 , 2 5 54 6 d a t a 2 0 0 , 2 0 8 , 2 4 6 , 9 6 1 8 3 2 , 8 0 , 8 4 7 d a t a 6 9 , 8 3 , 8 3 , 3 2 6 5 , 7 8 , 8 9 , 3 4 8 d a t a 7 5 , 6 9 , 8 9 , 3 2 , 1 4 6 ,

A l t h o s e P R I N T s t a t e m e n t s a r e t h e r e t s h o w t h a t o l h a b i t s d i h a r d . } W h n o m o v e a r o u n d t h s c r e e n u s i n g t h e s a m e r o u t i n e , b u t h i s t i m e i B a s i c ?

H o d d t h a t i B a s i c ? T h i s w i l l i n v o l v e b i o P E E K i n g a n dP O K E i n g , b u i t ' s n o t o d i f f i c u l t . T h p r i m e l o c a t i o n s a r e 7 8 1 , 7 8 a n 7 8 ( d e c i m a l ) , w h i c h a r e t h e " s a v e " l o c a t i o n s f o t h a n r e g i s t e r s , a n t h f l a g r e g i s t e r .

Y o w i l l r e c a l l t h a t w h a v e t s e a n c l e a r t h e c a r r y f l a g t r e a d /w r i t e f r o m / t o t h s c r e e n . T h c a r r y f l a g i B i ( d e c i m a l v a l u e 2 ) i nt h f l a g r e g i s t e r , s w h a v e t t w i d d l e t h a t b i t a r r a n g e o u " s e t "a n " c l e a r " .

T R E A D t h s c r e e n , L i n e s 1 6 a n 1 7 r e t u r n a n f o y o u .

L i n e s 1 8 a n 1 9 m o v e t h c u r s o r , a n p r i n t t h m e s s a g e i n l i n e2 0 0 . L i n e s 2 2 a n d 2 3 0 r e s p o n d t t h e k e y p r e s s .

G B

M K A A

O M C D D G P M

1 0 r e m : p l o t r o u t i n e i b a s i c1 1 r e m : p a u l b l a i r 5 / 8 51 2 0 :1 3 p r i n t c h r $ ( 1 4 7 ) ; : s 6 5 5 2 01 4 0 a 7 8 1 : b 7 8 2 : c 7 8 1 5 p r i n t ' h e l l o t h e r e " ;1 6 0 p o k e c p e e k ( c ) o r 1 s y s y r e s e c a r r y f l a g1 7 p e e k ( a ) : p e e k ( b )1 8 p o k e c p e e k ( c ) a n 2 5 4 : r e c l e a r c a r r y f l a g1 9 0 p o k e a , 2 4 : p o k e b 1 4 s y s 2 0 p r i n f ' p r e s s k e y " ;2 1 0 g e t y $ : i f y $ " " t h e n 2 i 02 2 p o k e a x p o k e b y s y s s y2 3 p r i n f f r o m t r a n s a c t o r "

T h e r e y o h a v e i t A t h s c r e e n t e l l s y o u , h a v e f u n ! !

5 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e 0

Page 58: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 58/84

R e v i e w sT h T u r b o P r o c e s s o r f o t h C 6

6 5 C 8 1 6 - b a s e d e x p a n s i o n h a r d w a r ew i t h 6 4 o b a t t e r y b a c k e d - u p R A

f r o m S w i s s C o m p I n c .

R e v i e w B S B r o w n P u l l i a mC o p y r i g h t 1 9 8 7 S B r o w n P u l l i a m

T h T u r b o P r o c e s s o r i o n o t h m o r e a m b i t i o u s a d d - o n b o a r d s f o t h C - 6 4 t h a t h a v e e n c o u n t e r e d . P h y s i c a l l y , i i j u s t a n o p e n c i r c u i t b o a r d ,w i t h o u t a c a s e , t h a t p l u g s i n t o t h e C a r t r i d g e P o r t . I w i l l r e q u i r e c a r e f u lh a n d l i n g a n a n t i - s t a t i c p r e c a u t i o n s . I r e p l a c e s a l m o s t t h e n t i r e C - 6 4w i t h t h e x c e p t i o n o I / f u n c t i o n s ( k e y b o a r d , S I D , V I g r a p h i c s c h i p ,a n d i s k a c c e s s ) . A l o t h e r f u n c t i o n s , t h a t i s t h m i c r o p r o c e s s o r c h i p ,a l R A M , a n m o s t o t h R O a r r e p l a c e d b h i g h e r p e r f o r m a n c ea l t e r n a t i v e s . T h m o s t s p e c t a c u l a r f a c e t o t h u p g r a d e i t h m i c r o p r oc e s s o r c h i p i t s e l f , t h W 6 5 S C 8 1 6 . T h i s i 1 b i C M O S u p g r a d e o t h 6 5 0 2 f a m i l y w i t h a e n h a n c e d i n s t r u c t i o n s e a n M H c l o c k . T h s e c o n d m a j o r f e a t u r e o t h b o a r d i h e r e t o f o r e u n h e a r d o ( f o rC o m m o d o r e ) 6 4 o b a t t e r y b a c k e d R A M . T h R O c h i p a p p e a r s t b

3 2 d e v i c e l o a d e d w i t h t w 1 6 o p e r a t i n g s y s t e m r e p l a c e m e n t s f o t h C - 6 4 B a s i c a n K e r n a l . T h o n - b o a r d R A i m a i n t a i n e d b r e c h a r g e a b l e N I C A D b a t t e r y .

T h b o a r d c a r r i e s l i s t p r i c e o $ 1 8 9 . 9 5 ( U S ) . I i n o t o v e r p r i c e d f o t h a m o u n t o h a r d w a r e i c o n t a i n s , b u w m u s t a s w h a t i w i l l t d t i m p r o v e t h o p e r a t i o n o o u C - 6 4 . S W I S S C O M P I n c , t h S w i s s d e s i g ne r o t h b o a r d , c l a i m f i r s t o a l t h a t t h M H c h i p w i l l a l l o w m o s tp r o g r a m s t r u t i m e s f a s t e r , h e n c e t h T U R B O n a m e . T h e y a d m i t ,h o w e v e r , t h a t t h e r e a r e s e v e r a l f u n c t i o n s t h a t w i l l n o b e s p e e d e d u p T h d i s k o p e r a t i o n s , l o a d i n g a n s a v i n g , r u a t h e o l d C o m m o d o r es p e e d s , a a l s o m u s t a n y t h i n g h a v i n g t d w i t h t h V I c h i p , s i n c e i c a n n o t d g r a p h i c s f a s t e r t h a n M H c l o c k r a t e . I a d d i t i o n , a n p r o g r a m t h a t u s e s t h C I c h i p s m u s t a l s o k e e p t h e o l d M H s p e e dl i m i t .

T h o t h e r p o t e n t i a l a d v a n t a g e f o t y p i c a l c o m m o d o r e u s e r s i t h n o v o l a t i l e R A M . W i t h b a t t e r y b a c k e d R A M , i y o t u r n o f t h c o m p u t e r ,o h a v e s u d d e n p o w e r d r o p o u t , y o u r p r o g r a m i s s t i l l s t o r e d w h e r e y o l o a d e d i t A a d e s i g n e r o s o m e b a t t e r y b a c k e d R A c a r t r i d g e s , a i

g o o d p o s i t i o n t r e c o g n i z e t h a d v a n t a g e o h a v i n g t h e n t i r e 6 4 o R A p r o t e c t e d b b a t t e r y .

A a d v a n t a g e t h T U R B O P R O C E S S O R i s u p p o s e d t o f f e r t o s o m ep r o g r a m m e r s i l a r g e n u m b e r o a d d i t i o n a l m a c h i n e l a n g u a g e c o m a n d s a n i n c r e a s e d a d d r e s s i n g c a p a b i l i t y o t h 6 5 C 8 1 6 . H o w e v e r ,t h a d d i t i o n a l a d d r e s s l i n e s a r e n o t m a d e a c c e s s i b l e t e x t e r n a l R A o t h m o d e l t e s t e d , s t h 1 m e g a b y t e a d d r e s s s p a c e i o a c a d e m i ci n t e r e s t o n l y . N e v e r t h e l e s s , t h e a d d e d 1 b i i n s t r u c t i o n s c a c e r t a i n l yi m p r o v e p r o g r a m m i n g e f f i c i e n c y a n f u r t h e r s p e e d u m a n y p r g r a m m e d o p e r a t i o n s , a n i o n r e a s o n , I ' s u r e , t h a t t h i s m i c r o p r oc e s s o r w a c h o s e n f o t h A p p l e I I G s . U n f o r t u n a t e l y , p r o g r a m s w r i t t e nw i t h 1 b i i n s t r u c t i o n s w i l l o n l y r u o C - 6 4 s t h a t a r a l s o e q u i p p e dw i t h T U R B O P R O C E S S O R a n w i l l n o t , i n g e n e r a l , b c o m p a t i b l e w i t ht h A p p l e . T h u t i l i t y o t h e x p a n d e d i n s t r u c t i o n s e t i f u r t h e r c o m p r o -

m i s e d b y t h f a c t t h a t a a s s e m b l e r t h a t s u p p o r t s t h e s e i n s t r u c t i o n sm a b h a r d t c o m e b y P e r h a p s t h e r e i o n a v a i l a b l e i E u r o p ew h e r e T U R B O w a o r i g i n a l l y i n t r o d u c e d . r e a l i z e i w o u l d h a v e b e e nb e y o n d t h s c o p e o t h m a n u a l t d t u t o r i a l o t h 6 5 C 8 1 6i n s t r u c t i o n s e t , b u t n o e v e n l i s t t h i n s t r u c t i o n s , n o m e n t i o na n y t h i n g a b o u t h o t g e o u o t h 6 5 0 2 e m u l a t i o n m o d e T U R B Os e e m s t s t a y i n s h o w s t h e y w e r e n ' t e v e n t r y i n g .

T h c o n c e p t o t h i s e x p a n s i o n c a r d i p r o m i s i n g , b u t t h e r e a r e a n u m b e r o m a j o r p r o b l e m s i m a k i n g i t r u l y u s e f u l t t h a v e r a g e u s e r .Y o s t a r t o f f b h a v i n g t c h e c k t h p o s i t i o n s o d i s w i t c h e s . T h e n ,s o m e u s e r s w i l l n o t i c e t h a t w h e n t h c o m p u t e r i t u r n e d o n , t h e s c r e e nm e s s a g e w i l l b e g i n t d i s p l a y f e w , o o s o m e C - 6 4 s , m a n y r a n d o mc h a r a c t e r s . T h m a n u a l i n s t r u c t s y o t a d j u s t t w s m a l l p o t e n t i o m et e r s ( t h e y t a k e V E R Y s m a l l s c r e w d r i v e r , a n d o n e i h a r d t g e a t w h i l e c o n t i n u a l l y p r e s s i n g a n r e l e a s i n g t h R E S E T b u t t o n . O t w o t h s i C - 6 4 s t r i e d t h i s w i t h , c o u l d n o f i n d a c o m b i n a t i o n t h a t w o u l dg e r i o t h r a n d o m c h a r a c t e r s . A n p r o g r a m t h a t d i s p l a y e d c h a r a ct e r s o t h s c r e e n w o u l d b e v i r t u a l l y u s e l e s s o t h e s e C - 6 4 s . T h r e e C 6 4 h a n r a n d o m c h a r a c t e r s , a n d o n o n e , t h e a d j u s t m e n t d i h e l p .T h t w C - 1 2 8 s t r i e d t u s ( i 6 m o d e ) w i t h T U R B O w o u l d n o r u b t h n o r m a l m e t h o d o h o l d i n g t h k e w h e n p o w e r i n g u p I y o p l a c e o n o t h D I s w i t c h e s i t h O F p o s i t i o n , t u r n o t h C - 1 2 8 i 6 m o d e , t h e n m o v e t h D I s w i t c h b a c k t T U R B O O N T U R B O d i r u n , b u w i t h t h s a m e s e v e r e r a n d o m c h a r a c t e r s t h a t i n c a p a c i t a t e dt w o t h e C - 6 4 s .

A s s u m i n g y o u r C - 6 4 h a s n p r o b l e m w i t h r a n d o m s c r e e n c h a r a c t e r s ,t h n e x t h u r d l e i t o f i n d o u w h e t h e r T U R B O w i l l l e y o u r p r o g r a m r u n .S t a r t b y a s s u m i n g a n y c a r t r i d g e w i l l c r e a t e a p r o b l e m , e v e n i y o h a v ea e x t e n d e r c a r d . S o m e p r o g r a m s h a v e m a d e u s o u n d o c u m e n t e d6 5 1 0 o p - c o d e s , a n t h e s e w i l l d e f i n i t e l y n o r u w i t h T U R B O . T h e r ew o u l d b a q u e s t i o n a b o u t d i s k c o p y p r o t e c t e d s o f t w a r e . t r i e d r e c e n tv e r s i o n o P o c k e t W r i t e r I w h i c h i h e a v i l y c o p y p r o t e c t e d , a n i w o u l dn o t l o a d w i t h T U R B O . n o n - p r o t e c t e d p r o g r a m w r i t t e n i n B a s i c , o u s i n g m a c h i n e l a n g u a g e w i t h a B a s i c l o a d e r s h o u l d g i v e n p r o b l e m .

t h o u g h t w o u l d t r o u t t h e S p e e d i m p r o v e m e n t b y r u n n i n g m t r u s t yP a p e r c l i p w o r d p r o c e s s o r . T h i s p r o g r a m h a a 8 c o l u m n d i s p l a ym o d e t h a t i n i c e f o v i e w i n g t e x t f o i t f o r m a t a c c u r a c y , b u t i a n n o y i n g l y s l o w w h e n i i s c r o l l i n g d o w n t h e p a g e . H o n i c e a t i m e ss p e e d u p o t h a t s c r o l l i n g w o u l d b e A l a s , i w a n o t b e p l u g g e d i t h d o n g l e a n i n s e r t e d P a p e r c l i p i n t o t h 1 5 4 1 d r i v e . T h f i r s t g o t c h aw a t h a t c o u l d n ' t u s t h A u t o - B o o t u t i l i t y i m B r o w n B o t q u i c kl o a d P a p e r c l i p w i t h t h T U R B O P R O C E S S O R i c o n t r o l a p o w e r u p s

u n - p l u g g e d t h B r o w n B o x , a n l e P a p e r c l i p d i t n o r m a l o n m i n u t el o a d . W h e n g o t h R E A D Y , t y p i n g i R U j u s t h u n g u t h c o m p u t e r .f o u n d t h i s v e r y s u r p r i s i n g , s i n c e P a p e r c l i p i a v e r y t a m e p r o g r a m .

T h i n s t r u c t i o n m a n u a l w a r n s t h a t s o m e g a m e s t h a t u s e v i d e o s p r i t e sh e a v i l y m a h a v e s o m e t r o u b l e w i t h T U R B O . I s o t h e y s u g g e s ts o l d e r i n g a t h r e e c o n d u c t o r c a b l e f r o m t h r e e t e r m i n a l s o T U R B O t p i n s 6 , 7 , a n d o t h P L c h i p i n s i d e t h e C - 6 4 . T h a d d i t i o n t h e nr e q u i r e s t r a c k c u o T U R B O a n t h e s o l d e r i n g o j u m p e r w i r e . T h i si n o t r i v i a l m o d i f i c a t i o n .

w a i m p r e s s e d w h e n l o a d e d m o n i t o r p r o g r a m a n d c o u l d t u r n t h ec o m p u t e r o f f , t h e n b a c k o n a n c o u l d S Y t t h p r e s e r v e d u t i l i t y , n m a t t e r w h e r e i R A i b e g i n s . O n i m p o r t a n t e x c e p t i o n i t h e C a s s e t t eb u f f e r w h i c h a s u s u a l g e t s z e r o e d o r e s e t . B a s i c p r o g r a m w o n ' t r u nw h e n t h c o m p u t e r i t u r n e d b a c k o n b e c a u s e t h p o w e r - u p r e s e ti n i t i a l i z e s t h B a s i c p o i n t e r s . T h i s o p e n s t h e q u e s t i o n o w h a t a d v a n -

T h T r a n s a c t o r 5 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 59: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 59/84

t a g e s o t h i s 6 4 o b a t t e r y b a c k e d R A c a a c t u a l l y b u t i l i z e d .T U R B O w i l l s a v e a p r o g r a m , b u t , i y o u w a n t t r u i a g a i n , y o u n e e ds o m e s o f t w a r e t r e s t o r e t h s t a r t u p o i n t e r s . E v e n m o r e s o f t w a r ew o u l d b e n e c e s s a r y i y o w i s h e d t p i c k u t h p r o g r a m w i t hp r e v i o u s l y g e n e r a t e d s t r i n g s a n v a r i a b l e s i n t a c t . D i f f e r e n t s o f t w a r ew o u l d b e r e q u i r e d i y o w i s h e d t s t o r e s e v e r a l p r o g r a m s a o n c e . I i p o s s i b l e t h a t t h a l t e r n a t i v e o p e r a t i n g s y s t e m i n c l u d e d i i t R O m a h a v e s o m e r e - i n i t i a l i z i n g s o f t w a r e , b u t i s o t h e y d o n ' t m e n t i o n i i t h d o c u m e n t a t i o n .

A y o m a g a t h e r , n o n - t e c h n i c a l u s e r m a f i n d T U R B O h e a v y g o i n g .U n f o r t u n a t e l y , t h e i n s t r u c t i o n m a n u a l i p o o r l y w r i t t e n , o s h o u l d s a y ,t r a n s l a t e d . T h o r i g i n a l , i G e r m a n w o u l d g u e s s , m i g h t h a v e r e a ds o m e w h a t b e t t e r . T h i s v e r s i o n i v e r y s k i m p y , c o n s i d e r i n g t h c o p l e x i t y o f t h e p r o d u c t . T h t e c h n i c a l p e r s o n i s o m e w h a t p u o f f , a l e a s t

a m b t h o b v i o u s p a i n s S W I S S C O M P h a v e t a k e n t o b l i t e r a t e t h n u m b e r s o m a n y o t h l o g i c c h i p s o t h b o a r d . T o b e u s e f u l ,p r o d u c t l i k e T U R B O m u s t b e d o c u m e n t e d i s u c h a w a t h a t q u a l i f i e dp e o p l e c a l e a r n e n o u g h a b o u t i t i n t e r c o n n e c t i w i t h v a r i e t y o h a r d w a r e a n d s o f t w a r e . T h S W I S S C O M P p e o p l e a r e o b v i o u s l y m o r ew o r r i e d t h a t s o m e o n e m a c o p y t h e i r c i r c u i t . c a a s s u r e t h e m , f r o mm e x p e r i e n c e m a r k e t i n g a p r o d u c t l i n e t h a t a l s o h a i t g r e a t e s t a p p e a lt t h t e c h i e u s e r , g o o d d e s i g n i o n l y a b o u t 1 0 o t h j o b . T h o t h e r9 0 i c o m m u n i c a t i o n w i t h t h p o t e n t i a l u s e r .

T U R B O P R O C E S S O R i p o w e r f u l p i e c e o h a r d w a r e , b u w o u l dg u e s s t h a t i w i l l c o e x i s t w i t h o n l y s m a l l f r a c t i o n o f c o m m e r c i a lp r o g r a m s . I d o e s n ' t s e e m t a l l o w 1 7 6 4 R A E x p a n s i o n U n i t t r u i b o t h a r m o u n t e d o n a e x t e n d e r c a r d . I t h T U R B O c o n n e c t D I s w i t c h i i t h O F p o s i t i o n , 1 7 6 4 R A T E S T r u n s s u c c e s s f u l l y , b u a s o o n a i i i t h O m o d e , t h R A t e s t f a i l s . T h d e s i g n e r s h a v e n o p r o v i d e d s o f t w a r e u t i l i t i e s t h a t e n a b l e n o n - t e c h n i c a l u s e r s t c o n v e ni e n t l y t a k e a d v a n t a g e o i t p o w e r . W a r t h e r e f o r e l e f t t w o n d e r w h w i l l c h o o s e t w r i t e s o f t w a r e t u s i t c a p a b i l i t i e s . A p r o g r a m m e r ,h a v e l o n g h e l d t h e 6 5 0 2 i s p e c i a l f a v o u r , a n h a v e h o p e d t h a t a 1 b i u p g r a d e w o u l d b e c o m e g e n e r a l l y a v a i l a b l e . T h l o g i c a l p l a c e f o t h a t t h a v e h a p p e n e d w o u l d h a v e b e e n w h e n C o m m o d o r e d e s i g n e d t h C 1 2 8 . T h i n k w h e r e C - 1 2 8 t h a t h a 6 5 C 8 1 6 a n c o u l d d i r e c t l ya d d r e s s i t R A E x p a n d e r a 5 1 2 K o c o n t i n u o u s m e m o r y c o u l d b p r i c e d r e l a t i v e t o t h A p p l e I I G S ! I i s a t c o n t e m p l a t e t h a t m i s s e do p p o r t u n i t y . T h m o s t i m p o r t a n t q u e s t i o n i w h e t h e r a c o m b i n a t i o n o a d d - o n m o d u l e s f o t h C - 6 4 m a k e s e n o u g h s e n s e f r o m a e n g i n e e r i n gs t a n d p o i n t t c o n v i n c e p r o g r a m m e r s t h a t t h e r e i r e a s o n a b l e e x p e c t at i o n o s i g n i f i c a n t m a r k e t f o i t s o f t w a r e . T U R B O P R O C E S S O R i w a s t e f u l . I m a k e s a b s o l u t e l y n u s o t h i n t e r n a l p r o c e s s o r o o t h i n t e r n a l 6 4 o R A M . m u s t a d m i t m t h i n k i n g i c o l o u r e d b m o w p r o d u c t s , b u t s u b m i t t h a t a d d e d R A M , w h e t h e r b a t t e r y b a c k e dc a r t r i d g e s s u c h a m i n e , o v o l a t i l e R A s u c h a s t h e C o m m o d o r e R A e x p a n d e r s , s h o u l d n o t t a k e a w a y t h u t i l i t y o t h e x i s t i n g C - 6 4 R A M .

G i v e n t h e c h o i c e b e t w e e n m o r e s p e e d a n d m o r e s p e e d c o m b i n e d w i t hl o t s m o r e s t o r a g e s p a c e , t h e C o m m o d o r e 1 7 6 4 R A E x p a n s i o n U n i t i s i m o p i n i o n , b e t t e r e n g i n e e r i n g s o l u t i o n . T h 1 7 6 4 ' s p o t e n t i a l i t y f o f a s t e r p r o g r a m s i t w o f o l d . M a n y e x i s t i n g p r o g r a m s t h a t d e p e n d o d i s k f i l e a c c e s s w i l l r u h u n d r e d s o t i m e s f a s t e r o n c e a R A D O i l o a d e d . T h o t h e r s p e e d a d v a n t a g e o t h 1 7 6 4 , f o n e p r o g r a m s , l i e si i t D M c a p a b i l i t y . W h a v e c o m e t t h i n k o m a c h i n e l a n g u a g ep r o g r a m s a s b l i n d i n g l y f a s t . T h 1 7 6 4 c a n b u s e d t m o v e l a r g eb l o c k o b y t e s f r o m o n p a r t o C - 6 4 m e m o r y t a n o t h e r e i g h t t i m e sf a s t e r t h a n m a c h i n e l a n g u a g e ! W h e n y o c o n s i d e r t h a t p r o g r a ms p e n d s m u c h o i t t i m e m o v i n g b u n c h e s o b y t e s f r o m o n p a r t o m e m o r y t a n o t h e r , y o c a s e t h p o t e n t i a l f o s p e e d i m p r o v e m e n t . I s h o u l d b a t l e a s t e q u a l t u s i n g t h e f u l l 6 5 C 8 1 6 i n s t r u c t i o n s e t , a n t h f a s t e r c l o c k r a t e o f T U R B O . T r u e , t h e 1 7 6 4 i v o l a t i l e R A a n c a n n o tr e m a i n l o a d e d w h e n p o w e r i s o f f , s t h a t i t r a d e o f a g a i n s t i t 2 5 6 Ks t o r a g e c a p a c i t y a d v a n t a g e . W i t h a e x t e n d e r c a r d , t h 1 7 6 4 c a nc o e x i s t w i t h a b a t t e r y b a c k e d R A c a r t r i d g e , a n s o m e p r o g r a m m e r s

m i g h t w i s h a s i m i l a r c a p a b i l i t y f o T U R B O t h a n d l e p o i n t e r r e s t o r a t i o nw i t h o u t d e t r a c t i n g f r o m t h 6 4 o R A s p a c e . T U R B O w o n ' t a l l o wt h i s , a n i e v e n s e e m s t f o r c e R A u p p e r l i m i t o 6 4 b e c a u s e i i i n c o m p a t i b l e w i t h t h 1 7 6 4 E x p a n s i o n C a r t r i d g e .

M a n y c r e a t i v e p r o g r a m m e r s w h u s e d t w r i t e f o t h C - 6 4 h a v e m o v e do t m o r e p o w e r f u l c o m p u t e r s . a a f r a i d t h T U R B O P R O C E S S O R i n o t t h e g a d g e t t h a t w i l l l u r e t h e m b a c k t t h 6 4

A b o u t T h A u t h o rB r o w n P u i l i a m i C h i e f E n g i n e e r o f B r o w n B o x e s , I n c . H d e s i g n e d t h Q U I C K B R O W N B O l i n e o 8 1 6 3 a n d 6 4 K b a t t e r y b a c k e d R A c a r t r i d g e s f o t h O 6 a n O 1 2 8 , a n f o m a n y y e a r s w a a E n g i n e e rw i t h G E N R A D , I n c . H p r e s e n t l y c o n s u l t s i t h f i e l d o e l e c t r o n i ct e s t i n g .

M a c h i n e L a n g u a g e R o u t i n e sf o t h C o m m o d o r e 6 4 / 1 2 8b T o d d D H e i m a r c ka n P a t r i c k P a r r i s hf r o m C O M P U T E ! P u b l i c a t i o n s

R e v i e w b y M i k l o s G a r a m s z e g h y

H a v e y o u e v e r t h o u g h t t h a t y o h a v e b e e n r e - i n v e n t i n g t h e w h e e le v e r y t i m e y o w r i t e a a s s e m b l y l a n g u a g e p r o g r a m ? W o u l d y o l i k el a r g e l i b r a r y o d o c u m e n t e d a s s e m b l y l a n g u a g e s o u r c e c o d e r o u t i n e s ?O r a r y o m e r e l y c u r i o u s a b o u t h o a s s e m b l y l a n g u a g e i a c t u a l l yu s e d i n p r a c t i c a l a p p l i c a t i o n s ?

I y o a n s w e r e d y e t a n o a l o t h a b o v e q u e s t i o n s , t h e n y o s h o u l d c o n s i d e r a c q u i r i n g c o p y o " M a c h i n e L a n g u a g e R o u t i n e s f o t h C o m m o d o r e 6 4 / 1 2 8 " f r o m C O M P U T E ! B o o k s . T h 5 8 p a g e s o t h i s r e c e n t r e l e a s e c o n t a i n t h a s s e m b l y l a n g u a g e s o u r c e c o d e f o s o m e2 0 f u l l y d o c u m e n t e d , c o m m e n t e d , a n d t e s t e d r o u t i n e s f o p e r f o r m i n g

w i d e r a n g e o t a s k s f r o m f i l e i n p u t / o u t p u t t o f l o a t i n g p o i n t m a t h t p r o g r a m m i n g t h C I T O c l o c k s t a l p h a b e t i z i n g a n s e a r c h i n g l i s t st A S C I I < P E T S C I I c o n v e r s i o n s , t n a m e b u f e w . A l t h o u g h t h e y a r n o i n t e n d e d t b u s e d a s t a n d a l o n e p r o g r a m s , m a n y c a b u s e dw i t h l i t t l e o n a d d i t i o n a l p r o g r a m m i n g b i n c o r p o r a t i n g t h e a d d i t i o n a lc o d i n g p r o v i d e d w i t h e a c h r o u t i n e t d e m o n s t r a t e i t u s e .

N o t h a t h a v e t w e a k e d y o u r i n t e r e s t , l e m s t a r t a t h b e g i n n i n g .T h f i r s t f e c h a p t e r s o t h b o o k a r d e v o t e d t d e s c r i p t i o n o t h 6 5 0 2 / 6 5 1 0 / 8 5 0 2 t y p e m n e m o n i c s i n s t r u c t i o n s s u c h a L D A , S T A , e t c .a n t h e i r a s s o c i a t e d o p - c o d e s , a n t h K E R N A L f u n c t i o n c a l l s s u c h a C L R C H N , S E T L F S , e t c . T h m n e m o n i c d e s c r i p t i o n s a r s i m i l a r i n s t y l et t h o s e f o u n d i o t h e r C O M P U T E ! b o o k s o m a c h i n e l a n g u a g ep r o g r a m m i n g . T h d e s c r i p t i o n s a r s h o r t b u c l e a r a n t t h p o i n t .R e f e r e n c e s a r m a d e i t h i n t r o d u c t i o n t s e v e r a l o t h e r m o r e c o m p r eh e n s i v e w o r k s o m a c h i n e l a n g u a g e a n a s s e m b l y l a n g u a g e p r o g r a mm i n g , i n c l u d i n g s o m e n o n - C O M P U T E ! p u b l i c a t i o n s . T h d e s c r i p t i o n so t h K E R N A L f u n c t i o n c a l l s , w h i c h i n c l u d e b o t h s t a n d a r d o n e s a s w e l la t h n e C - 1 2 8 e n t r i e s , a r a l s o s h o r t b u c l e a r . N r e a l e x a m p l e s o h o t u s e i t h e r t h K E R N A L o r t h e o p - c o d e s a r g i v e n a t t h i s p o i n t ,b u a l a r u s e d e x t e n s i v e l y i t h r e m a i n d e r o t h b o o k .

T h m e a t o t h b o o k i s o m e 5 0 p a g e s o c a r e f u l l y e x p l a i n e d a n d o c u m e n t e d a s s e m b l y l a n g u a g e r o u t i n e s a r r a n g e d i a l p h a b e t i c a lo r d e r b a a r b i t r a r i l y a s s i g n e d p r o g r a m n a m e s u c h a A L A R M 2 ( f o r

T h T r a n s a c t o r 5 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 60: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 60/84

s e t t i n g u T O c l o c k # 2 a s a a l a r m c l o c k ) o B O R C O L ( f o r c h a n g i n gt h b o r d e r c o l o r ) . T h r o u t i n e s a r p r e s e n t e d i f o r m a t s u i t a b l e f o P A o B U D D Y t y p e a s s e m b l e r , b u t h e i n t r o d u c t i o n g i v e s t i p s a n g u i d a n c e f o c o n v e r t i n g t h e l i s t i n g s t o t h e r a s s e m b l e r f o r m a t s . I y o p r e f e r t d i t h h a r d w a y , t h r o u t i n e s c a a l s o b e n t e r e d u s i n gm o n i t o r s u c h a B A S I C 7 . 0 ' s M O N I T O R c o m m a n d . H o w e v e r , t h i sa p p r o a c h d o e s r e q u i r e m u c h m o r e m a n u a l l a b o u r o y o u r p a r t f o c a l c u l a t i n g a b s o l u t e a d d r e s s e s a n l a b e l r e f e r e n c e s . T e d i o u s , b u t p o s s ib l e .

T h r o u t i n e s a r p r e s e n t e d i t r u e a s s e m b l y l a n g u a g e f o r m a t w i t ha d d r e s s a n d a t a l a b e l s . ( D e s p i t e t h r e f e r e n c e t m a c h i n e l a n g u a g e i t h t i t l e , t h b o o k a c t u a l l y d e a l s w i t h a s s e m b l y l a n g u a g e . T h e r e i s m a l l b u t d e f i n i t e d i f f e r e n c e b e t w e e n t h t w o . S t r i c t l y s p e a k i n g , m c h i n e l a n g u a g e d e a l s w i t h n u m b e r s o n l y w h i l e a s s e m b l y l a n g u a g ed e a l s w i t h s e t o f a r b i t r a r i l y d e f i n e d m n e m o n i c s u s e d t r e p r e s e n t t h en u m b e r s . F o e x a m p l e , $ A $ F $ 8 $ 0 $ D i m a c h i n e l a n g u a g e i e q u i v a l e n t t L D # $ F F : S T $ D 0 0 0 i a s s e m b l y l a n g u a g e ) . U n l i k e a e a r l i e r C O M P U T E ! b o o k w i t h a s i m i l a r t i t l e ( " M a c h i n e L a n g u a g e R o t i n e s f o t h C o m m o d o r e 6 4 " ) , B A S I C l o a d e r D A T A s t a t e m e n t s a r e n o tp r o v i d e d f o t h r o u t i n e s . I y o w a n t t S Y t a n o t h e m f r o m B A S I C ,y o u m u s t c r e a t e t h e D A T A s t a t e m e n t s a n P O K E i i n A a s s e m b l yl a n g u a g e s u b r o u t i n e f o c r e a t i n g D A T A s t a t e m e n t s f r o m o b j e c t c o d e i m e m o r y i p r o v i d e d a o n o f t h e r o u t i n e s i t h b o o k .

M o s t o t h r o u t i n e s a r s h o w n a b e i n g l o c a t e d i h i g h m e m o r y . T h i sf o l l o w s f r o m t h C - 6 4 t r a d i t i o n o f p u t t i n g s u c h r t h i n g s i t h u n u s e dc h u n k o R A a $ C 0 0 0 . H o w e v e r , w i t h a a s s e m b l e r , t h c o d e i f u l l yr e l o c a t a b l e b y c h a n g i n g t h a s s e m b l y o r i g i n s t a t e m e n t . I y o w a n t t i n c o r p o r a t e m o r e t h a n o n o t h s u b r o u t i n e s o r m i x t h e m w i t h y o u ro w a s s e m b l y c o d e , r e l o c a t i o n i i n e v i t a b l e . I s h o u l d a l s o b n o t e d t h a to t h C - 1 2 8 t h r o u t i n e s s h o u l d b p l a c e d i l o m e m o r y , s a a $ 0 B 0 0 o $ 1 3 0 0 , t a v o i d h a v i n g t d e a l w i t h b a n k s w i t c h i n g f o a c c e s s i n g t h K E R N A L a n d B A S I C R O M ' s a w e l l a t h I / b l o c k .R e m e m b e r t h a t o t h C - 1 2 8 , t h R A b e l o w $ 4 0 0 0 i v i s i b l e i b o t hB A N K a n B A N K 1 a n i a i d e a l s p o t f o c o d e n e e d i n g b o t hb a n k s . T h i n t r o d u c t i o n d i s c u s s e s t h e s e r e q u i r e m e n t s f o t h C - 1 2 8 b u m a k e s n a t t e m p t t e x p l a i n C - 1 2 8 b a n k s w i t c h i n g i a s s e m b l yl a n g u a g e ( i i v e r y s i m p l e ) a n r e f e r s t h r e a d e r t o t h e r s o u r c e s f o a e x p l a n a t i o n .

B e c a u s e o t h s i m i l a r i t y b e t w e e n t h t w m a c h i n e s , m o s t o t h r o u t i n e s w i l l w o r k w i t h o u t m o d i f i c a t i o n o e i t h e r t h C - 1 2 8 o C - 6 4 .W h e r e d i f f e r e n c e s e x i s t , d u m a i n l y t d i f f e r e n t a d d r e s s e s f o B A S I CR O r o u t i n e s c a l l e d a s u b r o u t i n e s , t h d o c u m e n t a t i o n f o t h a t r o u t i n ec l e a r l y e x p l a i n s t h r e q u i r e d c h a n g e s f o e a c h m a c h i n e . M o s t o t h l i s t i n g s a r g i v e n f o t h C - 6 4 f o r m a t w i t h C - 1 2 8 m o d i f i c a t i o n s l i s t e d a c o m m e n t s . I s h o u l d e v e n b e p o s s i b l e t a d a p t t h r o u t i n e s t w o r k o o t h e r C o m m o d o r e m a c h i n e s , s u c h a s t h e V I 2 0 P L U S / 4 , e t c . R o u t i n e sd e s i g n e d s p e c i f i c a l l y f o o n e m a c h i n e o r t h e o t h e r , s u c h a a c c e s s i n gt h 8 c o l u m n c h i p o r R A e x p a n d e r o t h C - 1 2 8 , a r c l e a r l y n o t e da b e i n g s u c h , a l t h o u g h s u s p e c t t h a t t h e y w o u l d w o r k q u i t e w e l l o C - 1 2 8 i C - 6 4 m o d e w i t h v e r y m i n o r m o d i f i c a t i o n s . T h R A e x p a n d e rr o u t i n e s s h o u l d a l s o w o r k o t h C - 6 4 w i t h t h 1 7 6 4 e x p a n d e r .

T h c o l l e c t i o n o f r o u t i n e s p r o v i d e d i t h b o o k g i v e s s o m e t h i n g f o e v e r y o n e : f r o m s o m e q u i t e s i m p l e r o u t i n e s t v e r y c o m p l e x o n e s .w i d e r a n g e o t o p i c s i p r o v i d e d f r o m m a t h a n c o n v e r s i o n r o u t i n e s t g r a p h i c s a n d s o u n d t c h i p r e g i s t e r p r o g r a m m i n g a n m a n y m o r e . I f a c t i c o v e r s e n o u g h g r o u n d t d a l m o s t a l o t h m u n d a n e a n b o r i n gt a s k s t h a t m a n y p r o g r a m m e r s d o n ' t l i k e t o w a s t e a w h o l e l o o t i m ed e v e l o p i n g f o t h e m s e l v e s . F a c e i t m o s t p e o p l e a r l a z y , s w h r i n v e n t t h e w h e e l ? I y o a r r e a l l y l a z y , y o c a m a i l i t h c o u p o np r o v i d e d a t h e n o t h b o o k w i t h a e x t r a $ 1 2 . 9 5 ( p l u s p o s t a g e ,h a n d l i n g a n a p p l i c a b l e t a x e s ) a n g e d i s k c o n t a i n i n g t h e s o u r c ec o d e f o e a c h o t h r o u t i n e s i t h b o o k i P A L / B U D D Y f o r m a t . E v e ni y o c h o o s e n o t u s t h r o u t i n e s e x a c t l y a l i s t e d , t h e y c a s e r v e a

a v e r y u s e f u l s t a r t i n g p o i n t f o y o u r o w c u s t o m r o u t i n e s . l i s t o s o m eo t h r o u t i n e s i n c l u d e d i g i v e n i T a b l e 1

A l t h o u g h t h e i n t r o d u c t i o n s t a t e s t h a t t h b o o k i n o i n t e n d e d t b a i n t r o d u c t i o n t a s s e m b l y l a n g u a g e p r o g r a m m i n g , w o u l d r e c o m m e n dt h i s b o o k m o s t s t r o n g l y f o b e g i n n e r t i n t e r m e d i a t e p r o g r a m m e r s .T h e s e a r t h p e o p l e w h w o u l d b e n e f i t m o s t f r o m t h c l e a n p r o g r a mm i n g s t y l e a n c l e a r d o c u m e n t a t i o n o h o e a c h r o u t i n e w o r k s . D e s p i t et h a b o v e s t a t e m e n t , t h e b o t t o m l i n e i t h a t " M a c h i n e L a n g u a g eR o u t i n e s " w i l l b w e l c o m e a d d i t i o n t t h l i b r a r y o f v i r t u a l l y a n a s s e m b l y l a n g u a g e p r o g r a m m e r . ( R e m e m b e r , C h r i s t m a s i n o t o f a a w a y ) .

T A B L E 1 S e l e c t e d A s s e m b l y L a n g u a g e R o u t i n e s

N a m e D e s c r i p t i o n

A L A R M 2 S e u p C I A T O a l a r m c l o c kA L S W A P A l p h a b e t i z e l i s t b s w a p p i n g s t r i n g sA N I M A T A n i m a t i o n b y c h a r a c t e r s e t sB I G M A P D i s p l a y a v i r t u a l w i n d o w p o r t i o n o l a r g e r l o g i c a l

s c r e e nC A S S C R C o n v e r t P E T S C I I t s c r e e n c o d e sC H A R X 4 , C H A R X 8 P r i n t m a g n i f i e d c h a r a c t e r sC O N C A TC U S T 8 0E X P L O DF E T C H / S T A S HF I R E B TI N T C L KI N T M U SM I X L O WR A S 1 2 8R E 8 0 C 0 / W R 8 0 C 0S P R I N TW I N D O WW R B U F F

J o i n t w d i s k f i l e sC r e a t e c u s t o m c h a r a c t e r s f o 8 c o l u m n s c r e e nP r o d u c e a e x p l o s i o n s o u n dR e t r i e v e f r o m o s t o r e i n R A e x p a n d e rR e a d j o y s t i c k f i r e b u t t o n sI n t e r r u p t d r i v e n o s c r e e n c l o c kI n t e r r u p t d r i v e n b a c k g r o u n d m u s i cC o n v e r t m i x e d c a s e c h a r a c t e r s t a l l o w e r c a s eS e u r a s t e r i n t e r r u p t o t h C - 2 8 4 0 c o s c r e e nR e a d o r w r i t e 8 c o l u m n c h i p r e g i s t e r sI n t e r r u p t d r i v e n s p r i t e sS e C - 1 2 8 w i n d o w b o u n d a r i e sO p e n d i r e c t d i s k b u f f e r w r i t e d i s k s e c t o r

A l s o : M a n y m a t h r o u t i n e s s u c h a a d d i t i o n , s u b t r a c t i o n , d i v i s i o n o f l o a t i n g p o i n t a n i n t e g e r n u m b e r s , c o n v e r s i o n f r o m A S C I I t i n t e g e r t f l o a t i n g p o i n t , e t c .

M e r l i n - 1 2 86 5 0 2 M a c r o A s s e m b l e rD e v e l o p m e n t S y s t e mW r i t t e n b G l e n B r e d o nP r o d u c e d b R o g e r W a g n e rP u b l i s h i n g I n c .

R e v i e w b y M G a r a m s z e g h y

T h e r e a r n u m b e r o g o o d a s s e m b l e r s c u r r e n t l y a v a i l a b l e f o t h e C -1 2 8 , a m o n g t h e m M e r l i n - 1 2 8 . T h i s e n t r y , w r i t t e n b G l e n B r e d o n a n p r o d u c e d b R o g e r W a g n e r P u b l i s h i n g I n c . b i l l s i t s e l f a a c o m p l e t em a c r o a s s e m b l e r e d i t o r s y s t e m . M e r l i n i n o c o p y p r o t e c t e d a n t h p u b l i s h e r s e v e n r e c o m m e n d t h a t y o m a k e y o u r s e l f f e b a c k u pc o p i e s t w o r k w i t h .

T h T r a n s a c t o r 5 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 61: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 61/84

W h e n y o b o o t t h M e r l i n d i s k , y o a r p r e s e n t e d w i t h t h m a i n m e n uf r o m w h i c h y o c a l o a d o s a v e s o u r c e o r o b j e c t f i l e s , a c c e s s d i s ku t i l i t i e s , a c c e s s B A S I C ' S M O N I T O R , e x i t t o B A S I C , e t c . T h o p t i o n s a r ea l f a i r l y s t r a i g h t f o r w a r d . M o s t o t h w o r k ( e x c e p t l o a d i n g a n s a v i n gf i l e s ) w i l l b d o n e i t h E D I T O R / A S S E M B L E R m o d e . T h M O N I T O Rc a b u s e d t v i e w o t e s t a c t u a l a s s e m b l e d o b j e c t c o d e .

M e r l i n f e a t u r e s a e d i t o r w i t h a w i d e r a n g e o s c r e e n a n l i n e o r i e n t e dc o m m a n d s f o l i s t i n g , i n s e r t i n g , d e l e t i n g , m o v i n g l i n e s , e t c . T h c o m a n d s a r e n t e r e d w i t h c o m b i n a t i o n s o a a l p h a k e y w i t h e i t h e r t h c o n t r o l k e ( f o r l i n e o r i e n t e d c o m m a n d s ) o r t h e C o m m o d o r e l o g o ( C = )k e ( l i s t i n g o r i e n t e d c o m m a n d s ) . A l t h o u g h t h c o m m a n d s a r f a i r l yl o g i c a l , t h e y m a t a k e s o m e r e l e a r n i n g i y o a r u s e d t a n o t h e r e d i t o r ,s u c h a B u d d y . T h M e r l i n e d i t o r a s s i g n s l i n e n u m b e r s a u t o m a t i c a l l yf o y o i i n c r e m e n t s o 1 T i n s e r t n e s t a t e m e n t s b e t w e e n e x i s t i n go n e s , y o u m u s t m a n u a l l y e n t e r i n s e r t m o d e . O c o u r s e , a l s u b s e q u e n tl i n e n u m b e r s a r r e n u m b e r e d a u t o m a t i c a l l y . W h i l e t h i s f e a t u r e i h a n d y i s o m e c a s e s , i m a k e s k e e p i n g t h a b s o l u t e l o c a t i o n o g i v e ns o u r c e c o d e s t a t e m e n t d i f f i c u l t i y o m o v e l i n e s a r o u n d l o t . I a l s om a k e s i i m p e r a t i v e ( a s t a t e d i t h m a n u a l ) t h a t y o d e l e t e l i n e s i nr e v e r s e o r d e r . I y o d e l e t e t h e m i f o r w a r d o r d e r , y o w i l l e n d u pd e l e t i n g t h w r o n g l i n e s d u t a u t o m a t i c r e n u m b e r i n g a f t e r e a c hd e l e t i o n .

K e y b o a r d m a c r o s a r s u p p o r t e d u s i n g t h A L k e a n f u n c t i o n k e y s .A L k e c o m b i n a t i o n s a r u s e d t e n t e r o p c o d e s ( e . g . A L T - a w i l l g i v ey o u L D A , A L T - j g i v e s J S R , e t c . ) w h i l e t h e f u n c t i o n k e y s w i l l i s s u e e d i t o rc o m m a n d s .

T h a s s e m b l e r o f f e r s r i c h v o c a b u l a r y o p s e u d o o p a n d i r e c t i v e s . I s u p p o r t s n e s t e d m a c r o s ( u t 1 d e e p ) a s w e l l a s c o n d i t i o n a l a s s e mb l i e s , a s s e m b l y d i r e c t l y f r o m d i s k f i l e , m u l t i p l e s o u r c e f i l e l i n k i n g ,g e n e r a t i o n o a b s o l u t e a n r e l o c a t a b l e o b j e c t c o d e a n w h o l e h o s t o o t h e r f e a t u r e s w h i c h m o s t m a c h i n e l a n g u a g e p r o g r a m m e r s f i n d u s e f u l .A l t h o u g h M e r l i n w o r k s p r i m a r i l y w i t h P R f i l e s , S E f i l e s c o n t a i n i n gs o u r c e c o d e c a a l s o b a c c e s s e d f r o m w i t h i n a a s s e m b l y b y t h u s o a a p p r o p r i a t e P U p s e u d o o p U s o S E t y p e f i l e s a l l o w s y o t c r e a t e s o u r c e c o d e o y o u r f a v o r i t e w o r d p r o c e s s o r , w h i c h f i n d t b v e r y c o n v e n i e n t f e a t u r e .

M a c r o l i b r a r i e s a r s u p p o r t e d w i t h t h e U S p s e u d o o p W i t h l i n k e d f i l e s ,l a b e l s c a n b e e i t h e r g l o b a l o l o c a l , w i t h e a c h l o c a l l a b e l c a p a b l e o h a v i n g a d i f f e r e n t v a l u e i n d i f f e r e n t m o d u l e s . L a b e l s a n o t h e r v a l u e sc a e v e n b a s s i g n e d v a l u e s f r o m t h k e y b o a r d d u r i n g a s s e m b l y .

T e x t c a n b e h a n d l e d i t h s o u r c e c o d e i b e w i l d e r i n g v a r i e t y o w a y s : a P E T S C I I t e x t , A S C I I t e x t , r e v e r s e v i d e o , s t r i n g s w i t h l e a d i n gl e n g t h b y t e s , s t r i n g s w i t h l a s t c h a r a c t e r h i g h b i t s e t , e t c . T h o n l y t e x tf o r m a t n o t s u p p o r t e d i C o m m o d o r e s c r e e n c o d e . T h i s c o m p l i c a t e sh i g h s p e e d o u t p u t t t h v i d e o c h i p s v i d i r e c t m e m o r y a c c e s s t v i d e oR A r a t h e r t h a n p r i n t i n g t t h s c r e e n . N u m b e r s c a b h a n d l e d i d e c i m a l , h e o b i n a r y . D e c i m a l n u m b e r s a r d e f a u l t . s p e c i a l p s e u d oo p F L O , w i l l p r o d u c e f i v e b y t e f l o a t i n g p o i n t r e p r e s e n t a t i o n o n u m b e r .

T h 1 4 a n s o m e p a g e m a n u a l , f o t h m o s t p a r t , i w e l l w r i t t e n a n e a s y t u n d e r s t a n d . H o w e v e r , c o n s i d e r a b l e c o n f u s i o n i i n t r o d u c e d a s o m e p o i n t s w h e r e t h t e x t h a n o b e e n a d e q u a t e l y u p d a t e d f r o mp r e v i o u s v e r s i o n s ( s e e f o e x a m p l e t h p r i n t e r c o m m a n d d e s c r i b e db e l o w ) . N u m e r o u s t y p o g r a p h i c a l e r r o r s c a a l s o b f o u n d t h r o u g h o u tt h t e x t . T h m a n u a l a s s u m e s c e r t a i n l e v e l o f u n d e r s t a n d i n g o a s s e m b l y l a n g u a g e c o n c e p t s a n o f f e r s n g u i d a n c e o a s s e m b l yl a n g u a g e o p c o d e s o t h e r t h a n b r i e f d e s c r i p t i o n o h o M e r l i n h a n d l e sc e r t a i n a d d r e s s i n g m o d e s . T h r e a d e r i r e f e r r e d e l s e w h e r e f o t u t o r i a l o a s s e m b l y l a n g u a g e . A p l u s , p u l l o u q u i c k r e f e r e n c e c a r di p r o v i d e d . ( I w o u l d h a v e b e e n n i c e r t p r o v i d e i i t h f o r m o k e y b o a r d t e m p l a t e r a t h e r t h a n a a l p h a b e t i c a l l i s t i n g ) .

T h M e r l i n d i s k c o n t a i n s n u m b e r o e x a m p l e p r o g r a m s , a o b j e c t f i l el i n k e r a n d a n " u n a s s e m b l e d o s o u r c e c o d e f r o m o b j e c t c o d e g e n e r a t o r( c u t e l y n a m e d " S O U R C E R O R " i k e e p i n g w i t h i t m y s t i c a l i m a g e ) .E a c h o t h e s e u t i l i t i e s i d e s c r i b e d b r i e f l y i t h m a n u a l .

A l t h o u g h i h a s o m e i n t e r e s t i n g f e a t u r e s , M e r l i n - 1 2 8 a p p e a r s t b e s s e n t i a l l y t h C - 1 2 8 v e r s i o n o a a s s e m b l e r w h i c h h a b e e n f l o a t i n ga r o u n d t h A p p l e ] w o r l d f o s o m e t i m e . W h i l e t h i s d o e s n o m e a n t s a t h a t i i s n ' t a n g o o d , i c o u l d p r o b a b l y h a v e b e e n m a d e b e t t e r i i w e r e d e s i g n e d s p e c i f i c a l l y f o t h C - 1 2 8 f r o m t h g r o u n d u p c a s e i p o i n t i c e r t a i n p o r t i o n s o t h i n s t r u c t i o n m a n u a l w h i c h w e r e c l e a r l yt a k e n f r o m a A p p l e m a n u a l w i t h o u t c h a n g e f o t h C - 1 2 8 , e v e nt h o u g h t h c o n t e x t i t o t a l l y d i f f e r e n t . F o e x a m p l e , t h p r i n t e r c o m a n d P R T R i g i v e n w i t h t h s y n t a x : P R T R < s l o t n u m b e r > , e t c . T h s l o t n u m b e r r e f e r s t o t h e x p a n s i o n s l o t i t h A p p l e c h a s s i s w h e r e t h p r i n t e r i n t e r f a c e i l o c a t e d . I t h C - 1 2 8 v e r s i o n , t h e < s l o t n u m b e r >a c t u a l l y r e f e r s t t h p r i n t e r d e v i c e n u m b e r . T h e x a m p l e i t h m a n u a l u s e s < s l o t n u m b e r > o ( i t h d e s c r i p t i o n o t h e x a m p l e ,w h i c h a d d s t t h e c o n f u s i o n ) i n s t e a d o u s u a l C - 1 2 8 t y p e d e v i c en u m b e r o o 5

B e c a u s e o i t A p p l e h e r i t a g e , t h f o r m a t o t h e r e q u i r e d a s s e m b l e rs o u r c e c o d e i p e r h a p s d i f f e r e n t t h a n w h a t m o s t C o m m o d o r e u s e r sw o u l d e x p e c t . T h f o r m a t i s i m i l a r t C P / M a n M S - D O S t y p ea s s e m b l e r s w i t h i t p r e d e f i n e d L A B E L , O P C O D E , O P E R A N D , C O M E N T f i e l d s r a t h e r t h a n t h f r e e f o r m s t r u c t u r e u s e d b P A L , B U D D Ya n s i m i l a r a s s e m b l e r s . Y o a r a l s o r e s t r i c t e d t o n a s s e m b l y l a g u a g e s t a t e m e n t p e r l i n e . W h i l e t h i s m a k e s t h i n g s u n i f o r m , i c a l e a dt o v e r l o n g l i s t i n g s o s i m p l e o s t a n d a r d a s s e m b l y r o u t i n e s . T h s o u r c ec o d e i d e f i n i t e l y n o P A c o m p a t i b l e , a l t h o u g h i w o u l d n o t a k e m u c he f f o r t t t r a n s l a t e P A s o u r c e c o d e . G l o b a l s e a r c h a n r e p l a c e f e a t u r e ss h o u l d m a k e r e p l a c i n g p s e u d o o p q u i t e e a s y .

O n f e a t u r e M e r l i n l a c k s i Z - 8 0 c r o s s a s s e m b l e r . L e t ' s f a c e i t t h Z - 8 0o t h C - 1 2 8 i o n o i t m o s t u s e f u l f e a t u r e s , y e v e r y f e a s s e m b l e r sw i l l s u p p o r t i ( Z - B U D f r o m t h B U D D Y s y s t e m d o e s a e x c e l l e n t j o b ) .

Z - 8 0 c r o s s a s s e m b l e r w o u l d a l l o w y o t c o n v e n i e n t l y t a k e a d v a nt a g e o t h 1 b i i n d e x i n g a n d m a t h m o d e s o t h e Z - 8 0 , s o m e t h i n g t h a tt h 6 5 0 2 t y p e c h i p s o r e l y l a c k s .

I s h o r t , i y o a r l o o k i n g f o r e a s o n a b l y g o o d C - 1 2 8 a s s e m b l e r a n d /o y o h a v e u s e d M e r l i n o a n o t h e r m a c h i n e , t h e n t h i s p r o g r a m i f o y o u . I y o a l r e a d y h a v e g o o d C - 1 2 8 a s s e m b l e r , t h e n c a s e n r e a s o n w h y o s h o u l d s w i t c h . M e r l i n i a l s o a v a i l a b l e f o t h C - 6 4 a n s e v e r a l o t h e r 6 5 0 2 t y p e m a c h i n e s .

F o m o r e i n f o r m a t i o n , c o n t a c t R o g e r W a g n e r P u b l i s h i n g I n c . , 1 0 5 0P i o n e e r W a y , S u i t e P E C a j o n , C 9 2 0 2 0

B e n c h m a r k M o d u l a - 2M o d u l a - 2 d e v e l o p m e n t s y s t e m

f o t h A m i g af r o m A v a n t - G a r d e S o f t w a r e

P r o d u c tM a n u f a c t u r e r

R e v i e w b y N i c k S u l l i v a n

B e n c h m a r k M o d u l a - 2 C o n s t r u c t i o n S e A v a n t - G a r d e S o f t w a r e2 2 1 3 W o o d b u r nP i a n o , T e x a s 7 5 0 7 5( 2 1 4 ) - 9 6 4 - 0 2 6 0

T h T r a n s a c t o r 5 J a n u a r y 1 9 8 8 ; V o l u m e 8 I s s u e O

Page 62: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 62/84

R e t a i l P r i c e B e n c h m a r k M o d u l a - 2 $ 1 9 9 . 9 5S i m p l e L i b s 9 9 . 9 5C L i b s 9 9 . 9 5I m a g e R e s o u r c e I F L i b s $ 9 9 . 9 5

U p d a t e / u p g r a d e p o l i c y : U p g r a d e s w i l l b a v a i l a b l e t r e g i s t e r e d u s e r so B e n c h m a r k M o d u l a - 2 f o $ 2 0 - $ 6 0 d e p e n d i n g o n a t u r e o e n h a n c em e n t s a n d a m o u n t o n e d o c u m e n t a t i o n . B u f i x e s a r n o t c o n s i d e r e du p g r a d e s a n w i l l b m a d e a v a i l a b l e a c o s t o f d i s t r i b u t i o n .

T h l a n g u a g e i l e a n , f a s t a n f l e x i b l e . I g i v e s y o t h b e s t o b o t hw o r l d s - s p e e d a n s i z e t h a t a r e a c l o s e a y o c a c o m e t p u r ea s s e m b l e r , p l u s t h d a t a h a n d l i n g a n p o w e r f u l c o m m a n d s o h i g hl e v e l l a n g u a g e . M o d u l a - 2 i c u m b e r s o m e b c o m p a r i s o n . T h e c o d e i g e n e r a t e s i m u c h l e s s e f f i c i e n t t h a n t h a t p r o d u c e d b y c o m p i l e r .M o r e o v e r , i t s t r o n g d a t a t y p i n g a n P a p a - W i r t h - k n o w s - b e s t p h i l o s op h a r r i d i c u l o u s l y c o n f i n i n g . . . n w o n d e r i i o f t e n d e s c r i b e d a v o l u n t a r y s t r a i t j a c k e t f o n e u r o t i c p r o g r a m m e r s .

i p e r h a p s t h w e a k e s t e x c u s e f o h i g h l e v e l l a n g u a g e e v e rd e v e l o p e d . T h " f r e e d o m i g i v e s y o t m i d a t a t y p e s i a i n v i t a t i o nt d i s a s t e r , a n a b e s t g i v e s y o u p r o g r a m s t h a t a r a l m o s t i m p o s s i b l et d e b u g . I t s y n t a x s e e m s t h a v e b e e n s p e c i f i c a l l y d e s i g n e d t p r o d u c e i n d e c i p h e r a b l e s o u r c e c o d e : M o d u l a - 2 d o e s n o h a v e t h e s ep r o b l e m s . W i t h M 2 , m o s t e r r o r s a r c a u g h t a c o m p i l e t i m e , s y o e s c a p e t h r u n - t i m e d i s a s t e r s t h a t p r o g r a m m e r s a l t o c o m m o n l ye n c o u n t e r . T h s o u r c e c o d e i m u c h e a s i e r t r e a d , t h u s m u c h e a s i e r t m a i n t a i n . A n t h c l a i m t h a t p r o g r a m s a r m o r e ' ' e f f i c i e n t " i j u s t n o t r u e t h e r e ' s n r e a s o n a a l w h M o d u l a - 2 p r o g r a m h a t b l o n g e r o r s l o w e r t h a n i t e q u i v a l e n t . I i t ' s m a x i m u m s p e e d y o w a n t ,t u r n t a s s e m b l e r , n o t C . . . u n l e s s y o l i k e m a k i n g l i f e h a r d f o y o u r s e l f .

T d a t e , t h e c o n t e s t b e t w e e n a n M o d u l a - 2 a s t h e h i g h - l e v e ll a n g u a g e o c h o i c e f o A m i g a d e v e l o p m e n t h a s b e e n h e a v i l y l o p s i d e d i f a v o u r o f C . F o o n t h i n g , t h e x a m p l e s i A m i g a p r o g r a m m i n gm a n u a l s l i k e t h R o K e r n e l M a n u a l s a r a l m o s t e x c l u s i v e l y i C m u c h t t h f r u s t r a t i o n o f t h o s e w h p r e f e r , a s s e m b l e r o d i f f e r e n th i g h l e v e l l a n g u a g e . F o r a n o t h e r , t w e x c e l l e n t c o m p i l e r s h a v e b e e na v a i l a b l e e v e r s i n c e t h A m i g a c a m e o u t , w h e r e a s f o M o d u l a - 2 p r g r a m m e r s t h e r e w a o n l y a i n d i f f e r e n t o f f e r i n g f r o m T D I . ( N o t e : T D h a r e c e n t l y a n n o u n c e d t h l a t e s t u p g r a d e f o r t h e i r M o d u l a - 2 c o m p i l e r ,w h i c h i c l a i m e d t f i t h n u m e r o u s b u g s t h a t h a v e b e e n r e p o r t e d i p r e v i o u s v e r s i o n s . )

W i t h t h e r e c e n t r e l e a s e o B e n c h m a r k , n e M o d u l a - 2 c o m p i l e r f o t h A m i g a , t h c h o i c e o a h i g h l e v e l d e v e l o p m e n t l a n g u a g e i n l o n g e r s oc l e a r - c u t . I t h r e a c t i o n o C o m p u S e r v e ' s A m i g a F o r u m i a n i n d i c at i o n , t h B e n c h m a r k M o d u l a - 2 i g o i n g t i n t e r e s t l o o p e o p l e w h w a n t t d s e r i o u s A m i g a p r o g r a m m i n g .

e x a m p l e p r o g r a m s o t h d i s k s , m o s t l y a d a p t e d f r o m c o d e w r i t t e n f o t h T D c o m p i l e r , a l t h i s i t h w o r k o o n e m a n , L e o n F r e n k e l .

T h b a s i c s o f t w a r e c o m p o n e n t s o B e n c h m a r k ( w h i c h F r e n k e l c a l l s" M o d u l a - 2 c o n s t r u c t i o n s e t " ) a r e t h e c o m p i l e r , l i n k e r a n e d i t o r . T h e s ea r a l i n v o c a b l e s e p a r a t e l y f r o m t h C L b u t g e n e r a l l y w i l l n o b e , a sb o t h t h c o m p i l e r a n l i n k e r a r a l s o a v a i l a b l e f r o m f u n c t i o n k e y sw i t h i n t h e e d i t o r i t s e l f . M o r e c o n v e n i e n t l y s t i l l , t h e d i t o r k n o w s h o t r e a d t h e c o m p i l e r ' s e r r o r o u t p u t , w h i c h i i b i n a r y f o r m a t o t h e r w i s er e a d a b l e o n l y w i t h t h a i o s u p p l i e d u t i l i t y , a n l e t s y o s t e p t h r o u g ht h e o f f e n d i n g l i n e s o f y o u r s o u r c e f i l e ( a g a i n w i t h f u n c t i o n k e y ) t m a k e c o r r e c t i o n s .

T h c o m p i l e r a n l i n k e r a r f a s t e v e n f a s t e r t h a n t h e i r e q u i v a l e n t s i t h M a n x A z t e c c o m p i l e r , a f a a c a t e l l s a l i a l y o h a v ev e r y q u i c k a n f r i e n d l y e n v i r o n m e n t f o d e v e l o p i n g p r o g r a m s . E x e c u ta b l e p r o g r a m s c r e a t e d w i t h B e n c h m a r k a l s o r u f a s t j u s t a f a s t a s t h eM a n x C e q u i v a l e n t , a c c o r d i n g t F r e n k e l , t h o u g h h a v e n ' t b e n -c h m a r k e d B e n c h m a r k a n s c a n ' t v e r i f y t h a t f r o m p e r s o n a l o b s e r v at i o n . T h s i z e o t h e x e c u t a b l e w i l l g e n e r a l l y b b i f a t t e r t h a n M a n xw o u l d g e n e r a t e , p r i m a r i l y o w i n g ( a g a i n , a c c o r d i n g t F r e n k e l ) t t h w a t h B e n c h m a r k l i n k e r h a n d l e s l i b r a r i e s i i n c l u d e s t h e w h o l e o e a c h r e f e r e n c e d l i b r a r y i i t o u t p u t , n o j u s t t h p a r t i c u l a r r o u t i n e su s e d i t h p r o g r a m . T h i s h a t h m o s t n o t i c e a b l e e f f e c t o s m a l l e rp r o g r a m s ( T W M , w h i c h i l e s s t h a n 4 u n d e r M a n x , i a b o u t 9 u n d e rB e n c h m a r k ) , a n m a h e l p t a c c o u n t f o B e n c h m a r k ' s v e r y f a s t l i n kt i m e s .

T h o n l y r e a l d i s a p p o i n t m e n t i t h B e n c h m a r k p a c k a g e , f o m e i t h e d i t o r , w h i c h i y e a n o t h e r v a r i a n t o M i c r o E m a c s s l i c k , e n h a n c e dE m a c s , c o m p a r e d t o t h e r s I ' v e s e e n o t h A m i g a , b u E m a c sn o n e t h e l e s s . P e r s o n a l l y , f i n d E m a c s v e r y c l o s e t u n u s a b l e f o h e a v ye d i t i n g . H o w e v e r , f o u n d t h a t e n t e r i n g p r o g r a m i a n o t h e r e d i t o r( R i c k S t i l e s ' U e d i t , i m c a s e ) , t h e n s w i t c h i n g t t h e s u p p l i e d e d i t o r f o c o m p i l i n g , l i n k i n g a n f i x i n g e r r o r s w a q u i t e s a t i s f a c t o r y . I m u s t b a d m i t t e d , t o o , t h a t o n e ' s c h o i c e o f t e x t e d i t o r s i v e r y m u c h a m a t t e r o p e r s o n a l t a s t e , s s o m e p r o g r a m m e r s w i l l u n d o u b t e d l y b d e l i g h t e dw i t h t h i n c l u s i o n o E m a c s i t h B e n c h m a r k p a c k a g e .T h i m p o s i n g m a n u a l , i o u B e n c h m a r k , i s p e c i a l p r e - r e l e a s ev e r s i o n , a n a s u c h s u f f e r s f r o m t h e h a s t e w i t h w n i c h i w a o b v i o u s l yp r e p a r e d - o s o m e p a g e s t h e t y p o s a l m o s t o u t w e i g h t h t e x t . g r e a td e a l o i i g i v e n o v e r t d o c u m e n t i n g t h v e r y e x t e n s i v e s e o l i b r a r yf u n c t i o n s B e n c h m a r k p r o v i d e s , a n e v e n m o r e i d e v o t e d t l i s t i n g s o t h " . d e f " f i l e s , w h i c h a r M o d u l a - 2 ' s e q u i v a l e n t o t h i n c l u d e f i l e su s e d i a n a s s e m b l e r . O t h e r s e c t i o n s o t h m a n u a l p r o v i d e f u l ld o c u m e n t a t i o n o t h e d i t o r ( l o o c o m m a n d s , i t h e t r u e E m a c st r a d i t i o n ) , t h c o m p i l e r a n l i n k e r ( h e r e y o g e t h u s u a l c o m m a n dl i n e o p t i o n s f o s p e c i f y i n g i n p u t a n o u t p u t d i r e c t o r i e s , s e a r c h p a t h s f o l i b r a r y a n d s y m b o l f i l e s , a s w i t c h f o i n c l u d i n g s y m b o l i n f o r m a t i o n i t h e x e c u t a b l e f i l e f o u s w i t h a s y m b o l i c d e b u g g e r l i k e W a c k , a n d s o n ) , a n t h o t h e r s u p p l i e d u t i l i t i e s . A l t h o u g h t h p a c k a g e d o e s n o i n c l u d e i t o w d e b u g g e r , f u l l s o u r c e - l e v e l d e b u g g e r i p l a n n e d f o f u t u r e r e l e a s e .

O n v e r y u s e f u l s e c t i o n o t h m a n u a l p r o v i d e s a s e t o f s t a t e m e n t - b y -s t a t e m e n t g u i d e l i n e s f o c o n v e r t i n g s o u r c e t M o d u l a - 2 , w h i c h i b o o n f o a n y o n e c o m i n g t M 2 a d i d , f r o m a b a c k g r o u n d , a n a l s of o M p r o g r a m m e r s n e t t h A m i g a w h a r t r y i n g t m a k e s e n s e o

O u r e v i e w c o p y o B e n c h m a r k a r r i v e d a T r a n s a c t o r s e v e r a l w e e k sa g o , w h i c h p u u s i m m e d i a t e l y i a a w k w a r d s i t u a t i o n , s i n c e n o n e o u k n e w a n y t h i n g m u c h a b o u t t h e l a n g u a g e . T h a t h a r d f a c t i t h p r i n c i p a l b a c k g r o u n d f o r t h i s a r t i c l e , i w h i c h w a n t t d e s c r i b e t h e t h e h e a v i l y C - o r i e n t e d s y s t e m m a n u a l s . A n o t n e r ^ s e c t i o n p r o v i d e sp a c k a g e f o y o u , a n t e l l y o a b o u t m f i r s t f o r a y i n t o M p r o g r a m - d e t a i l e d i n s t r u c t i o n s f o i n s t a l l i n g B e n c h m a r k o v a r S o A r n i J3 ^ ^ ^ s y s t e m c o n f i g u r a t i o n s , ^ ^ e i s e w n e r e i n t h i s i s s u e . , o a d e d A m i g a w i t h m u W p J e f , o p p i e S j h a r d d r j v e a n e x p a n s i o n R A

i w o r t h p o i n t i n g o u t t h a t , e v e n w i t h t h m i n i m u m c o n f i g u r a t i o n , i i p o s s i b l e t h a v e t h e d i t o r , c o m p i l e r a n l i n k e r r e s i d e n t i R A d u r i n gT h p a c k a g e f i r s t . O u c o p y c a m e w i t h s i h e a v i l y l o a d e d d i s k s , a n a

v o l u m e m a n u a l t o t a l l i n g m o r e t h a n 7 0 p a g e s i o t h e r w o r d s , a i m p r e s s i v e q u a n t i t y o m a t e r i a l . A p a r t f r o m a e x t e n s i v e s e t o f P p r o g r a m d e v e l o p m e n t , w h i c h s p e e d s t h i n g s u g r e a t l y . Y o m a h a v e

t p l a y w i t h t h e s i z e s o f t h v a r i o u s i n t e r n a l b u f f e r s u s e d b t h T h T r a n s a c t o r 6 J a n u a r y 1 9 8 8 ; V o l u m e 8 I s s u e O

Page 63: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 63/84

c o m p i l e r i o r d e r t a c h i e v e t h i s , b u t h n e c e s s a r y s t e p s a r f u l l yc o v e r e d i t h m a n u a l , a n i d o e s n ' t s o u n d d i f f i c u l t t d o

M o v e r a l l i m p r e s s i o n o t h B e n c h m a r k s f a h a b e e n a l m o s tu n i f o r m l y f a v o u r a b l e . F r e n k e l h a c l e a r l y p u g r e a t d e a l o t h o u g h ta n e f f o r t i n t o m a k i n g t h s y s t e m s i m p l e t u s f o n o v i c e p r o g r a m m e r sw i t h o u t s a c r i f i c i n g p o w e r o e f f i c i e n c y . F o e x a m p l e , o n o t h e d i s k st h a t c o m e w i t h B e n c h m a r k i a b o o t d i s k , c o n f i g u r e d f o m i n i m u ms y s t e m , t h a t p u t s y o r i g h t i n t o t h e d i t o r . T h s o u r c e f o " H e l l oW o r l d " p r o g r a m i l o a d e d i a u t o m a t i c a l l y ; y o u c a n c o m p i l e a n l i n k i b f o l l o w i n g t h e i n s t r u c t i o n s i t h c o m m e n t s a t h f r o n t o f t h p r o g r a m , a n t h u s g e f e e l i n g f o u s i n g t h e p a c k a g e w i t h i n m i n u t e s o o p e n i n g a u p w i t h o u t o n c e l o o k i n g a t h m a n u a l . h a v e n e v e r s e e nl a n g u a g e p a c k a g e f o t h A m i g a t h a t w a e a s i e r t g e s t a r t e d w i t h ,A m i g a B a s i c i n c l u d e d .

A n o t h e r I n d i c a t i o n o t h w o r k t h a t h a g o n e i n t o B e n c h m a r k i t h l i b r a r i e s w h i c h , a m e n t i o n e d a b o v e , p r o v i d e a v e r y r i c h s e t o f f u n c t i o n sb e y o n d t h s t a n d a r d M o d u l a - 2 s e t . S o m e o t h l i b r a r i e s a r n o p a r t o t h e b a s i c p a c k a g e b u m a b o b t a i n e d e i t h e r b b u y i n g t h c o m p l e t es y s t e m ( c u r r e n t l y $ 2 9 9 U S ) , o b s e p a r a t e p u r c h a s e . O n o t h e s ea d d i t i o n a l s e t s o f l i b r a r y m o d u l e s s e e m s t h a v e b e e n s p e c i f i c a l l yd e s i g n e d t s e d u c e d i e h a r d p r o g r a m m e r s - i c o n t a i n s c o m p l e t ei m p l e m e n t a t i o n s o t h s t a n d a r d l i b r a r i e s f o r f i l e a n t e r m i n a l i n p u t /o u t p u t , m e m o r y a l l o c a t i o n , s t r i n g h a n d l i n g , c h a r a c t e r c o n v e r s i o n a n m o r e . O t h e r a d d i t i o n a l l i b r a r i e s p r o v i d e f u n c t i o n s f o s i m p l i f y i n g t h ep r o g r a m m e r i n t e r f a c e t o I n t u i t i o n , a n f o h a n d l i n g I F F a n o t h e rg r a p h i c s c h o r e s i s t r a i g h t f o r w a r d w a y .

A f o M o d u l a - 2 i t s e l f , a d m i t t m i x e d f e e l i n g s . L i k e i t p r e d e c e s s o r ,P a s c a l , M i t h w o r k o N i k l a u s W i r t h , a n i t f l a v o u r d e r i v e s f r o mW i r t h ' s p r e o c c u p a t i o n w i t h a c a d e m i c c o r r e c t n e s s i p r o g r a m m i n gt e c h n i q u e . T h o u g h M i c e r t a i n l y p o w e r f u l a n o p e n - e n d e d e n o u g ht h a t y o u c a n " b e a t t h e s y s t e m " i y o r e a l l y w a n t t o i d o e s n o t l e n di t s e l f t u n d e r h a n d e d p r o g r a m m i n g t r i c k s w i t h t h s a m e c a s u a l e a s e a C T h i s c a s e e m c o n f i n i n g a f i r s t , i y o u ' r e a c c u s t o m e d t C ' s f r e e a n e a s y w a y s , p a r t i c u l a r l y s i n c e t h t w l a n g u a g e s a r s y n t a c t i c a l l y q u i t es i m i l a r .

O t h o t h e r h a n d , t h e r e a r e m a n i f e s t a d v a n t a g e s t t h c o m p a r a t i v e l yr i g i d M o d u l a - 2 w a o d o i n g t h i n g s . T h s t r i c t M r e q u i r e m e n t t h a to p e r a n d s a n f u n c t i o n p a r a m e t e r s b o t h c o r r e c t t y p e s e l i m i n a t e sm a n y o t h h a r d t t r a c e b u g s t h a t t y p e m i s m a t c h e s i n t r o d u c e i n t op r o g r a m s . E v e n t h o u g h f i n d i a n n o y i n g l y f u s s y t h a t c a n ' t m i a I N T E G E R ( s i g n e d i n t ) w i t h a C A R D I N A L ( u n s i g n e d i n t ) i a e x p r e s s i o nw i t h o u t d o i n g a e x p l i c i t c o n v e r s i o n , h a v e t g r a n t t h a t i t ' s v e r y n i c e t p i c k u p o t e n t i a l l y d i s a s t r o u s t y p e m i s m a t c h p r o b l e m s a c o m p i l e t i m e .

T h e r e a r a f e w M o d u l a - 2 f e a t u r e s w i s h h a c o u n t e r p a r t s f o r . O n i t h S E t y p e , w h i c h a l l o w s y o t t r e a t c o l l e c t i o n o f o b j e c t s a a u n o r d e r e d s e i n s t e a d o a o r d e r e d a r r a y , w i t h a p p r o p r i a t e o p e r a t i o n sf o t h u n i o n a n i n t e r s e c t i o n o f s e t s , a n f o d e t e r m i n i n g w h e t h e rp a r t i c u l a r n u m b e r i a e l e m e n t o a g i v e n s e t . A n o t h e r h a n d y f e a t u r ei t h W I T H s t a t e m e n t , w h i c h r e d u c e s t h o v e r h e a d f o i n i t i a l i z i n gs t r u c t u r e s ( R E C O R D S , i M 2 - s p e a k ) . T h i s n o t o n l y a l l o w s t h e c o m p i l e rt g e n e r a t e b e t t e r o b j e c t c o d e , b u a l s o m a k e s f o c l e a n e r - l o o k i n g ,e a s i e r t r e a d s o u r c e p r o g r a m .

N o s u r p r i s i n g l y , t h e r e a r e a l s o f e a t u r e s o t h a t a r c o n s p i c u o u s l ya b s e n t f r o m M o d u l a - 2 . F o m e t h m o s t a g g r a v a t i n g ( a n d i n e x p l i c a b l e )i t h l a c k o a n w a o i n i t i a l i z i n g s t a t i c d a t a i M 2 W h e r e i y o m i g h t s a s o m e t h i n g l i k e :

i n t D a y s l n M o n t h [ ] { 3 1 , 2 8 3 1 , . . . } ;

w h i c h c o s t s y o j u s t 2 b y t e s o o b j e c t c o d e , s i n c e t h t a b l e i a s s e m b l e d d i r e c t l y i n t o y o u r p r o g r a m , M o d u l a - 2 r e q u i r e s y o t d e c l a r e

t h a r r a y s e p a r a t e l y a n i n i t i a l i z e i w i t h a s s i g n m e n t s t a t e m e n t s ,c o m p a r a t i v e l y w a s t e f u l p r o c e s s . T h B e n c h m a r k v e r s i o n o t h l a g u a g e g o e s a l o n g w a t o w a r d s d e a l i n g w i t h t h i s p r o b l e m , w h e n d e a l i n gw i t h g r a p h i c s d a t a , b p r o v i d i n g f a c i l i t y f o c o n c a t e n a t i n g t h d a t aw i t h y o u r p r o g r a m , t h e n a c c e s s i n g i b s p e c i a l p u r p o s e f u n c t i o n s , b u w i s h t h e r e w e r e m o r e g e n e r a l s o l u t i o n .

W e l l , j u s t a e d i t o r s a r m a t t e r o t a s t e , s t o o a r e l a n g u a g e s , a n w h i l eI ' s t i l l d i t h e r i n g o v e r w h e t h e r M o d u l a - 2 i f o m e t h e r e a r u n d o u b te d l y m a n y o w h h a v e a l r e a d y m a d e u y o u r m i n d s i i t f a v o u r . I y o a r o n o t h a t m a n y , t a k e s e r i o u s l o o k a B e n c h m a r k i t ' s r i g h t u t h e r e a m o n g t h e b e s t d e v e l o p m e n t s y s t e m s t h A m i g a h a t o f f e r .

T W i M o d u l a - 2

T h f o l l o w i n g l i s t i n g i a M o d u l a - 2 e q u i v a l e n t o t h t w m C l i e n t m o d u l eg i v e n i e l s e w h e r e i t h i s i s s u e . M a n y o t h c o m m e n t s h a v e b e e no m i t t e d t c o n s e r v e s p a c e , b u t i f e p l a c e s h a v e a d d e d n e c o m m e n t s p o i n t i n g o u t d i f f e r e n c e s a n s i m i l a r i t i e s b e t w e e n t h t w l a n g u a g e s a r e f l e c t e d i t h p r o g r a m . T h f u l l M o d u l a - 2 s o u r c e f o T W w i l l a p p e a r o t h s e c o n d T r a n s a c t o r A m i g a d i s k , a l o n g w i t h t h

s o u r c e , e x e c u t a b l e s , a n s e v e r a l p r o g r a m s t w h i c h T W s u p p o r th a b e e n a d d e d .

( T h i s ' d e f i n i t i o n m o d u l e " s p e c i f i e s w h i c h i d e n t i f i e r s i t w m C l i e n t m a b a c c e s s e d b y o t h e r m o d u l e s . E x c e p t f o t h m a i n m o d u l e t h a t e v e r y p r o g r a mm u s t h a v e , a l m o d u l e s a r e i t h e r ' i m p l e m e n t a t i o n m o d u l e s ' o c o r r e s p o n d i n g " d e f i n i t i o n m o d u l e ' l i k e t h i s o n e .

♦ D E F I N I T I O N M O D U L E t w m C l i e n t ; 'P R O C E D U R E P o s t M e ( C l i e n t N a m e : A R R A Y O C H A R ) : B O O L E A N ;P R O C E D U R E U n P o s t M e ( ) ;P R O C E D U R E t w m l n i t ( ) : B O O L E A N ;P R O C E D U R E t w m C l e a n U p ( ) ;E N t w m C l i e n t .

I M P L E M E N T A T I O N M O D U L E t w m C l i e n t ;(

T h i s m o d u l e s h o u l d b c o m p i l e d a n l i n k e d w i t h a p p l i c a t i o n s t h a t w i s h t b c l i e n t s o T W w h e n i i p r e s e n t i t h e s y s t e m . B r i e f l y , t h c l i e n tc a l l s t h f u n c t i o n t w m l n i t t o s e t u p , a f t e r w a r d s c a l l s P o s t M e w h e n e v e rh w i s h e s t g t s l e e p , t h e n f i n a l l y c a l l s t w m C l e a n U p j u s t b e f o r ee x i t i n g . D e t a i l s a r i t h p r e f a t o r y c o m m e n t s t T W M . m o d ( a n d T W M . c ) .T h F R O M s t a t e m e n t s b e l o w c o r r e s p o n d r o u g h l y t i n c l u d e s t a t e m e n t s ,e x c e p t t h a t i n s t e a d o i n c l u d i n g a e n t i r e f i l e , o n l y t h o s e i d e n t i f i e r st h a t a r s p e c i f i c a l l y w a n t e d a r b r o u g h t i ( t h e i r n a m e s a p p e a r a f t e rI M P O R T ) . I i a l s o p o s s i b l e t i n c l u d e A L t h i d e n t i f i e r s f r o m g i v e nf i l e b s a y i n g ' I M P O R T M e m o r y ' , f o e x a m p l e , b u i t h a t c a s e e v e r yr e f e r e n c e t a i d e n t i f i e r f r o m t h a t f i l e m u s t b e p r e c e d e d b y t h n a m eo t h f i l e p l u s p e r i o d ( e . g . " M e m o r y . A l l o c M e m ' ) .

* F R O M S Y S T E M I M P O R T A D R , B Y T E , A D D R E S S , T S I Z E ;F R O M M e m o r y I M P O R T A l l o c M e m , F r e e M e m , M e m R e q S e t , M e m C l e a r ;F R O M P o r t s U t i l I M P O R T C r e a t e P o r t , D e l e t e P o r t ;F R O M P o r t s I M P O R T

W a i t P o r t , G e t M s g , P u t M s g , F i n d P o r t , M e s s a g e , M e s s a g e P t r , M s g P o r t P t r ;F R O M S t r i n g s I M P O R T S t r i n g L e n g t h ;F R O M N o d e s I M P O R T N T M e s s a g e ;

C O N S T ( T h e s e a r e c o n s t a n t d e c l a r a t i o n s , s i m i l a r t # d e f i n e s ♦

N U L L N I L ;

P o r t N a m e " T i n y W i n d o w M a n a g e r " ;G a d g N a m e S i z e 1 7

t w m A c t i o n A d dt w m A c t i o n D e l e t e

0 1

T h T r a n s a c t o r 6 J a n u a r y 1 9 8 8 ; V o l u m e 8 I s s u e O

Page 64: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 64/84

( T h u n d e r s c o r e s i t h f o l l o w i n g a r e n o t a l l o w e d i s t a n d a r d M 2 b u a r a e x t e n s i o n r e c o g n i z e d b t h B e n c h m a r k c o m p i l e r ♦

E J D KE J D P E N J N T U IE _ A L R E A D Y . U PE _ O P E N _ P O R TE J D P E N J V I N D O WE J \ C T I O N J J N K N O W NE J A S K . U N K N O W NE J M O J V I E ME _ A B A N D O N _ S H I P

0 5 0 1 ;5 0 2 ;5 0 3 ;5 0 4 ;5 0 5 ;5 0 6 ;5 0 7 ;5 0 8 ;

T Y P Et w m M e s s a g e P t r P O I N T E R T t w m M e s s a g e ;

T h R E C O R D ( i . e . s t r u c t u r e ) d e c l a r a t i o n i t h f o l l o w i n gi s i m i l a r e x c e p t i s y n t a x d e t a i l s t t h e q u i v a l e n t .

t w m M e s s a g e R E C O R Dt m N a m et m A c t i o n

P O I N T E R T O A R R A Y [ 0 . . G a d g N a m e S i z e - 1 ] O C H A R ;I N T E G E R ; E N D ;

R E T U R N r e s u l t ;E N P o s t M e ;

P R O C E D U R E U n P o s t M e ;

V A p o r t G o b b l e r A D D R E S S ;

B E G I Nt w m p o r t : = F i n d P o r t ( A D R ( P o r t N a m e ) ) ;

I t w m R e a d y A N ( t w m p o r t N U L L ) T H E ND e l m s g \ t m A c t i o n : t w m A c t i o n D e l e t e ;P u t M s g ( t w m p o r t A , D e l m s g ) ;

T W w i l l r e p l y t h o r i g i n a l ( A D D ) m e s s a g e b e f o r e r e p l y i n g t h i so n i f i t ' s g o i n g t r e p l y i a a l l . . . h e n c e t h l o o p e x i t c o n d i t i o n

R E P E A Tp o r t G o b b l e r : W a i t P o r t ( m p A ) ;

U N T I L G e t M s g ( m p A ) D e l m s g ;E N D ;

E N U n P o s t M e ;

V A ( g l o b a l v a r i a b l e d e c l a r a t i o n s ♦ m : M s g P o r t P t r ; ( r e p l y p o r t f o o u m s g st w m p o r t : M s g P o r t P t r ; ( p o i n t s t t w m ' s p o r tA d d m s g t w m M e s s a g e P t r ; ( t w m A c t i o n A d d m e s s a g eD e l m s g t w m M e s s a g e P t r ; ( t w m A c t i o n D e l e t e m e s s a g et w m R e a d y : B O O L E A N ; ( T R U E w h e n p o r t s a r a l l o c a t e d a n i n i t i a l i z e d

T h i s i f u n c t i o n p r o c e d u r e " - i r e t u r n s v a l u e . T h t y p e o t h r e t u r n e d v a l u e i d e c l a r e d a f t e r t h c o l o n a t h e n o t h f i r s t l i n e ;i t h i s c a s e , i i o t y p e B O O L E A N .

P R O C E D U R E P o s t M e ( c l i e n t N a m e : A R R A Y O C H A R ) : B O O L E A N ;V A ( d e c l a r a t i o n o v a r i a b l e s l o c a l t t h i s p r o c e d u r e *

r e s u l t B O O L E A N ;

T h v a r i a b l e p o r t G o b b l e r i n e e d e d b e c a u s e y o a r n o a l l o w e d t i g n o r et h e v a l u e o f u n c t i o n p r o c e d u r e i M 2 . . . y o u h a v e t d S O M E T H I N G w i t hi t H e r e , a n f u r t h e r o n i i a s s i g n e d t a m e a n i n g l e s s v a r i a b l e .

■ • p o r t G o b b l e r : A D D R E S S ;

B E G I Nr e s u l t : = F A L S E ;

T h c a r e t c h a r a c t e r / A / i u s e d i M t d e r e f e r e n c e p o i n t e r s . T h u sA d d m s g \ t m N a m e i e q u i v a l e n t t C ' A d d m s g - > t m N a m e o r m o r e p r e c i s e l y ,( * A d d m s g ) . t m N a m e . N o t i c e t h a t P u t M s g a n o t h e r f u n c t i o n s w a n t t b R E C O R D S a s a r g u m e n t s , n o R E C O R D p o i n t e r s . T h o c t o t h o r p e c h a r a c t e r ' # i o n o t w w a y s o s a y i n g ' n o t - e q u a l - t o ' i M ( t h e o t h e r i ' < > ' ) .

• I S t r i n g L e n g t h ( c l i e n t N a m e ) T H E NI t w m R e a d y T H E N

t w m p o r t : F i n d P o r t ( A D R ( P o r t N a m e ) ) ;

I t w m p o r t N U L L T H E NA d d m s g \ t m N a m e A D R ( c l i e n t N a m e ) ;A d d m s g \ t m A c t i o n : t w m A c t i o n A d d ;

P u t M s g ( t w m p o r t A , A d d m s g ) ;

p o r t G o b b l e r : W a i t P o r t ( m p A ) ;

A d d m s g : = G e t M s g ( m p A ) ;

I A d d m s g \ t m A c t i o n E J D K T H E Nr e s u l t : « T R U E ;

E N D ;E N D ;

E N D ;E N D ;

P R O C E D U R E t w m l n i t ( ) B O O L E A N ;B E G I N

( B e c a u s e y o c a n ' t t e s t f o t h s u c c e s s o f u n c t i o n l i k e A l l o c M e m Qi t h s a m e s t a t e m e n t a y o i n v o k e i t p r o c e d u r e l i k e t w m l n i t i s i g n i f i c a n t l y b u l k i e r i M t h a n i C

| N O t w m R e a d y T H E Nm p C r e a t e P o r t ( N U L L , 0 )

I m p N U L L T H E ND e l m s g : A l l o c M e m ( T S I Z E ( t w m M e s s a g e ) , M e m R e q S e t { M e m C l e a r } ) ;

I D e l m s g N U L L T H E NA d d m s g : = A l l o c M e m ( T S I Z E ( t w m M e s s a g e ) , M e m R e q S e t { M e m C l e a r } ) ;

I A d d m s g N U L L T H E ND e l m s g A . t m M e s s a g e . m n R e p l y P o r t : m p A d d m s g A . t m M e s s a g e . m n R e p l y P o r t : m p D e l m s g M m M e s s a g e . m n N o d e . l n T y p e : = N T M e s s a g e ;A d d m s g \ t m M e s s a g e . m n N o d e . l n T y p e : N T M e s s a g e ;

t w m R e a d y : T R U E ;E N D ;

E N D ;E N D ;

E N D ;

I N O t w m R e a d y T H E Nt w m C l e a n U p ;

E N D ;

R E T U R N t w m R e a d y ;

E N t w m l n i t ;

P R O C E D U R E t w m C l e a n U p ( )

B E G I Nt w m R e a d y : F A L S E ;

( T S I Z E i t h f o l l o w i n g i s i m i l a r t C ' s i z e o f o p e r a t o r . *

I m N U L L T H E N D e l e t e P o r t ( m p A ) ; E N D ;I D e l m s g N U L L T H E N F r e e M e m ( D e l m s g , T S I Z E ( t w m M e s s a g e ) ) ; E N D ;I A d d m s g N U L L T H E N F r e e M e m ( A d d m s g , T S I Z E ( t w m M e s s a g e ) ) ; E N D ;

E N t w m C l e a n U p ;E N t w m C l i e n t

T h T r a n s a c t o r 6 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 65: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 65/84

A m i g a D i s p a t c h e sb T i m G r a n t h a m , T o r o n t o , O n t a r i o

I t ' s b e e n a l m o s t t w y e a r s n o s i n c e b e g a n w r i t i n g A m i g a D i s p a t c h e st i m e t o s t a r e i n t o t h f i r e o v e r a f o a m i n g t a n k a r d , d r a w r e f l e c t i v e l y o t h p i p e a n r e a p p r a i s e t h f u t u r e o t h A m i g a a n t h i s c o l u m n .T h i s c o l u m n s t a r t e d a k i n d o t i s h e e t . N e w s w a s c a r c e i t h c o n v e n t i o n a l m e d i a : t h o n l y s o u r c e o c u r r e n t A m i g a i n f o r m a t i o n w a o C o m p u S e r v e . M o s t o t h a t s e e m e d s u s p e c t : " b o a r d t h a t y o p l u g i n t o t h 6 8 0 0 0 s o c k e t t m a k e t h A m i g a f a s t e r t h a n a V A 1 1 / 7 8 0 ? S u r e . "

L o t s o s o f t w a r e w a c o m i n g R e a l S o o n N o w . ' R e a l S o o n ' t u r n e d o u t . t o b t w y e a r s , b u i h a f i n a l l y a r r i v e d s m u c h s o i f a c t , t h a t a v e r yp l e a s e d t s a t h a t c a n ' t p o s s i b l y k e e p u w i t h i a n y m o r e .

T h o s e w h h a v e b e e n f a i t h f u l r e a d e r s o t h i s c o l u m n h a v e p r o b a b l yn o t i c e d s h i f t i e m p h a s i s a w a y f r o m n e w s c o v e r a g e a n t o w a r d ss o m e w h a t m o r e p e r s o n a l c o m m e n t a r y . W e l l , I ' m a k i n g t h a t o f f i c i a l ,s t a r t i n g w i t h t h i s e d i t i o n . F r o m n o o n A m i g a D i s p a t c h e s w i l l h a v e a m o r es e l e c t i v e f o c u s t h a n i o r i g i n a l l y h a d . I w i l l d i s p e n s e w i t h b r e a t h l e s sa n n o u n c e m e n t s o n e s o f t w a r e a n d h a r d w a r e a n d r e p l a c e t h e m w i t hm o r e i n - d e p t h c o m m e n t a r y o a b r o a d e r r a n g e o f t o p i c s : p r o d u c t t r e n d s ,p r o g r a m m i n g , c o m p u t i n g s t a n d a r d s a n a p p l i c a t i o n s .

I ' m s u r e s o m e o y o a r c u r l i n g y o u r l i p s i d i s g u s t a t t h i s p o i n t . " O G o d ,t h l a s t t h i n g w n e e d i J e r r y P o u r n e l l e c l o n e . " c a o n l y s a y t h a t w i l lt r y t o k e e p t h i s c o l u m n l i v e l y , i n f o r m a t i v e a n t h o u g h t - p r o v o k i n g . I t h a te n d e a v o u r , I ' m f o r t u n a t e t h a v e t h s u b j e c t d o F r a n k l y , s t i l l t h i n k t h eA m i g a i t h m o s t a m a z i n g t h i n g s i n c e G a n d a l f s l e w t h B a l r o g a n r e t u r n e d t t e l l t h t a l e .

A l l t h i s i n o t s a t h a t w o n ' t m e n t i o n t h a r r i v a l o f g a m e t h a t p u s h e st h h a r d w a r e t i t l i m i t s o a e x p e r t s y s t e m t h a t w i l l c o n c o c t r e c i p e s f o b e n i g n r e c r e a t i o n a l P h a r m a c e u t i c a l s . B u t s u c h p r o d u c t s w i l l h a v e t e x e m p l i f y w h a t f e e l t b g e n u i n e i n n o v a t i o n .

W a T r a n s a c t o r b e l i e v e t h a t , w i t h t h i n t r o d u c t i o n o t h 5 0 a n t h 2 0 0 0 , t h A m i g a h a s a r o s y f u t u r e . T h 5 0 h a s a v e r y g o o d c h a n c e t r e p l a c e t h C 6 i t h h o m e m a r k e t o v e r t h e n e x t f i v e y e a r s . I m a a l s ob e c o m e t h m a c h i n e o c h o i c e f o c o m p u t e r s c i e n c e s t u d e n t s : w h e r e e l s ec a n y o u g e 6 8 0 2 0 / 6 8 8 8 1 m a c h i n e f o l e s s t h a n $ 1 8 0 0 ( U S ) ? N o t m e n t i o n t h e m u l t i t a s k i n g O a n d a n a r r a y o m a t u r e y e i n e x p e n s i v ed e v e l o p m e n t t o o l s .

T h 2 0 0 0 w i l l c o n t i n u e t o f i n d f a v o u r w i t h e n g i n e e r s a n s c i e n t i s t s . d n o b e l i e v e , h o w e v e r , t h a t t h 2 0 0 0 w i l l m a k e s e r i o u s d e n t i t h e b u s i n e s s

m a r k e t M S - D O S i t o d e e p l y e n t r e n c h e d . B u i w i l l b t h f i r s t A m i g a t b t a k e n s e r i o u s l y a b u s i n e s s m a c h i n e , e v e n m o r e s w h e n i e v e n t u a l l yr u n s U n i x .

T h 1 0 0 0 w i l l p r o b a b l y g r a c e f u l l y r e t i r e , h a v i n g s p e n t i t s e l f b l a z i n g t r a i lf o t h 5 0 a n t h 2 0 0 0 . I w i l l b b r o u g h t o u o f e s t i v e o c c a s i o n s a n g i v e n p l a c e o h o n o u r , l i k e r e s t o r e d B u g a t t i s i C a n a d a D a p a r a d e s .

B u e v e n t h e s e c o n f i d e n t p r o g n o s t i c a t i o n s m a f a l l s h o r t o t h m a r k . F o t h i n k t h e A m i g a i i t v a r i o u s i n c a r n a t i o n s w i l l p r o v i d e t h e p l a t f o r m f o g e n u i n e l y d i f f e r e n t a p p l i c a t i o n s . G i v e n i t h a r d w a r e s u p p o r t f o e x t e r n a la u d i o a n v i d e o s i g n a l s a n t h i n c r e a s i n g ' d i g i t a l i z a t i o n ' o t e l e v i s i o n a n s o u n d e q u i p m e n t , t h A m i g a w i l l p r o b a b l y b e c o m e t h f i r s t p e r s o n a lc o m p u t e r t b i n t e g r a t e d i n t o t h a v e r a g e h u m a n b e i n g ' s e l e c t r o n i ce n v i r o n m e n t .

M e a n w h i l e , i t ' s c e r t a i n l y n s l o u c h i t h h e r e - a n d - n o w d e p a r t m e n t . S o m ev e r y e x c i t i n g w o r k , f o e x a m p l e , i b e i n g d o n e a t h C e n t e r f o P r o d u c t i v i t yE n h a n c e m e n t a t h U n i v e r s i t y o L o w e l l . R i c h M i n e r , w h i m a n a g e r o t h C e n t e r , t e l l s m t h e y a r e b u s y p o r t i n g N C ( N e t w o r k C o m p u t i n gS y s t e m ) t t h A m i g a .

T h o s e o y o w h r e a d m l a s t c o l u m n m a r e m e m b e r N C S : i t ' s A p o l l oC o m p u t e r s ' s y s t e m f o d i s t r i b u t e d a p p l i c a t i o n s t h a t p e r m i t s a p r o g r a m t r u a c r o s s n e t w o r k o c o m p u t e r s . N C i n e t w o r k , o p e r a t i n g s y s t e m a n h a r d w a r e i n d e p e n d e n t , a n i t h f i r s t p r o p o s a l t p r o v i d e t h e f o u n d a t i o nf o t r u l y i n t e g r a t e d c o m p u t i n g a c r o s s h e t e r o g e n e o u s e n v i r o n m e n t .

T h e y h a v e m a n y t y p e s o m a c h i n e s a t h C e n t e r : e v e r y t h i n g f r o m m i c r o st m a i n f r a m e s . A n t h e y a r a l n e t w o r k e d t o g e t h e r , m o s t l y v i E t h e r n e ta n N F ( N e t w o r k F i l e S y s t e m ) . M i n e r ( n r e l a t i o n t o J a y ) s e e s t h e A m i g a a a v e r y p r a c t i c a l a d d i t i o n t a n n e t w o r k e d e n v i r o n m e n t . " W h y b u a V T -1 0 t e r m i n a l w h e n f o t h s a m e m o n e y y o c a b u y a n A m i g a w i t h a E t h e r n e t i n t e r f a c e a n d b e o n l i n e t s e v e r a l d i f f e r e n t h o s t s s i m u l t a n e o u s l y ? "W h e n i c o m e s t N C S , M i n e r b e l i e v e s t h A m i g a w i l l p r o v i d e a e x t r e m e l yc o s t - e f f e c t i v e e n t r y i n t o t h N C e n v i r o n m e n t .

M i n e r i a l s o p a r t l y r e s p o n s i b l e f o y e a n o t h e r n e t w o r k i n g s t a n d a r d b e i n gp o r t e d t t h A m i g a : h e h a s g i v e n t h s o u r c e c o d e t X - W i n d o w s t D a l eL u c k a C o m m o d o r e - A m i g a .

X - W i n d o w s i g r a p h i c i n t e r f a c e s t a n d a r d d e v e l o p e d a t h M a s s a c h u s e t t sI n s t i t u t e o T e c h n o l o g y a n i d e s t i n e d t b e c o m e t h A N S I s t a n d a r d u s e ri n t e r f a c e f o n e t w o r k e d e n v i r o n m e n t s . I y o h a v e X - W i n d o w s r u n n i n g o y o u r m a c h i n e , i w i l l p e r m i t y o u r c o m p u t e r t o p e n w i n d o w o n a n ys c r e e n o t h n e t w o r k , b i a M S - D O S s c r e e n , M a s c r e e n o S u w o r k s t a t i o n s c r e e n . Y o u r c o m p u t e r c o n t r o l s t h a t w i n d o w , w h e r e v e r i i s e x a c t l y a i w o u l d o n e t h a t h a d o p e n e d o i t o w s c r e e n : i c a d r a w i t h a t w i n d o w a n r e c e i v e i n p u t f r o m i t

L i k e N C S , i h a r i v a l f r o m S u M i c r o s y s t e m s : N e W S , o N e t w o r kW i n d o w i n g S y s t e m . N e W S u s e s t h e P o s t S c r i p t p a g e d e s c r i p t i o n l a n g u a g ed e v e l o p e d b A d o b e S y s t e m s ( i t s f o u n d e r s d i d t h e p r e l i m i n a r y w o r k o nP o s t S c r i p t a X e r o x P A R C , w h e r e a l w i n d o w i n g i n t e r f a c e s g o t h e i r s t a r t ) .W i t h N e W S , e a c h m a c h i n e o t h n e t w o r k h a s P o s t S c r i p t i n t e r p r e t e rr u n n i n g . T h d r a w i n g i n f o r m a t i o n f o e a c h N e W S w i n d o w i r e c e i v e d o v e r

T h e T r < s a c t o r 6 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 66: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 66/84

t h n e t w o r k a s t r i n g o f P o s t S c r i p t t o k e n s . T h i s m e a n s t h a t e v e n aP o s t S c r i p t p r i n t e r o t h n e t w o r k c o u l d h a v e a w i n d o w o p e n e d o i a n g r a p h i c g e n e r a t e d . O c o u r s e , s u c h a w i n d o w c o u l d o n l y b u s e d f o o u t p u t .

W i t h a n A N S I c o m m i t t e e w o r k i n g f u l l s t e a m o X - W i n d o w s , t h o u g h , i l o o k s l i k e i w i l l b e c o m & t h o f f i c i a l s t a n d a r d . F o r t u n a t e l y f o S u n , N e W Sc a n i m p l e m e n t e d o t o o X - W i n d o w s . A f a a k n o w , N e W S h a n o b e e n p o r t e d t t h A m i g a , t h o u g h i h a b e e n m a d e a v a i l a b l e o t h M a a n t h A t a r i S T

W h a t d N C a n X - W i n d o w s m e a n f o t h i n d i v i d u a l ? I m a g i n e t h i s : y o a r a e n g i n e e r f o g i a n t m u l t i n a t i o n a l c o r p o r a t i o n . Y o u r c o m p a n y h a t p r o d u c e p r o t o t y p e d e s i g n o t u r b i n e f a n f o h i g h - p e r f o r m a n c e j e e n g i n e a n i h a t d i i o n d a y . A 9 : 0 0 a m c o n f e r e n c e c a l l i s e u v i s a t e l l i t e w i t h t h c o m p a n y ' s t o m i n d s f r o m a l o v e r t h g l o b e i a t t e n d a n c e .

B u t h i s i n o s i m p l y v o i c e c o n f e r e n c e a l t h c o m p u t e r s t h a t e a c he n g i n e e r h a s a c c e s s t a r a l s o l i n k e d u d u r i n g t h i s c o n f e r e n c e . U s i n g X W i n d o w s a n N C S , t h p a r t i c i p a n t s c a d i s p l a y t h e i r d e s i g n i d e a s o e v e r y o n e e l s e ' s s c r e e n ; i s e v e r a l d i f f e r e n t v i e w s a o n c e i d e s i r e d . V a r i o u sp r o c e s s o r s o t h n e t w o r k c o u l d b u s e d t r u t e s t s o s i m u l a t i o n s o a n a l y s e s o t h d e s i g n s . P a r t i c i p a n t s c o u l d m o d i f y o t h e r d e s i g n s a s w e l l a t h e i r o w n . O n c e f i n a l d e s i g n h a d b e e n s e t t l e d o n n u m e r i c a l l yc o n t r o l l e d m i l l i n g m a c h i n e s o m e w h e r e o n t h n e t w o r k , s o m e w h e r e i t h w o r l d , w o u l d c a r v e a h u n k o m e t a l i n t o t h a c t u a l p r o t o t y p e .

O c o u r s e , s u c h a s c e n a r i o d e m a n d s a e n o r m o u s l y f a s t , r e l i a b l e m e a n s o t r a n s m i t t i n g d a t a . F i b r e - o p t i c l i n k s c a p r o v i d e s u c h s p e e d n o w . I f a c t ,a c c o r d i n g t C e s a r C e s a r a t t o , V i c e P r e s i d e n t o T r a n s m i s s i o n H a r d w a r eT e c h n o l o g y f o B e l l N o r t h e r n R e s e a r c h , w i t h i n t h e d e c a d e w w i l l h a v ef i b r e o p t i c s t h a t c a t r a n s m i t 1 0 t e r a b i t s p e s e c o n d . W i t h t h a t k i n d o s p e e d , o n h a l f o f t h e w o r l d ' s p o p u l a t i o n c o u l d t a l k t t h o t h e r h a l f o v e rt w o p t i c a l f i b r e s .

W h i c h i u l t i m a t e l y t h p o i n t t r a n s p a r e n t c o m m u n i c a t i o n b e t w e e np e o p l e . I t h c o n f e r e n c e s c e n a r i o d e s c r i b e d a b o v e , t h p u r p o s e o X W i n d o w s , N C S , c o m p u t e r s , a n n e t w o r k s i t p r o v i d e t h e i n v i s i b l e s u p p o r tf o f r e e a n p r o d u c t i v e i n t e r a c t i o n b e t w e e n t h p a r t i c i p a n t s . A n t h e r e i n r e a s o n w h o n o t h o s e e n g i n e e r s c o u l d n ' t h a v e b e e n u s i n g a A m i g ad u r i n g t h a t c o n f e r e n c e .

I t ' s t h i s e x t r a o r d i n a r y r a n g e o f a p p l i c a t i o n o t h A m i g a f r o m a r c a d em a c h i n e s l i k e B a l l y ' s S u H u n t e r t m e m b e r i g o o d s t a n d i n g i c o m m u n i t i e s o c o m p u t e r s t h a t c o n t i n u e s t f a s c i n a t e m a f t e r t w y e a r sa n w i l l , e x p e c t , f o m a n y m o r e . D a m n , i t ' s n e a t m a c h i n e !

T h n e w s . . .

A S I G G R A P H , w h i c h i t h e A s s o c i a t i o n o C o m p u t i n g M a c h i n e r y ' s a n n u a lc o n f e r e n c e o c o m p u t e r g r a p h i c s , t h s a m e C e n t e r f o P r o d u c t i v i t y E h a n c e m e n t m e n t i o n e d a b o v e d e m o n s t r a t e d g r a p h i c s c o p r o c e s s o r b o a r df o t h A m i g a 2 0 0 0 . T h A m i g a P a r a l l e l I m a g i n g C o p r o c e s s o r c a u s u t s e v e n N E u P D 7 2 8 1 I m a g e P i p e l i n e d P r o c e s s o r c h i p s f o a e f f e c t i v e p r o c e s s i n g r a t e o 3 M I P S . I s h o u l d b a v a i l a b l e a y o r e a d t h i sa n w i l l c o s t $ 2 0 0 0 ( U S ) . F u l l s o f t w a r e s u p p o r t , i n c l u d i n g l i b r a r y o i m a g ep r o c e s s i n g f u n c t i o n s , w i l l b p r o v i d e d w i t h t h e b o a r d . S i m i l a r b o a r d s f o o t h e r P C s a n d w o r k s t a t i o n s c a c o s t $ 3 0 , 0 0 0 ( U S ) o r m o r e .

e n h a n c e d d i s k a c c e s s p r o g r a m f r o m A S D G I n c . , m u s t s e n d i t h e i r o r i g i n a ld i s k , a n $ 2 . 5 0 i U f u n d s . A m e r i c a n o w n e r s m u s t s e n d t h o r i g i n a l d i s ka n s e l f - a d d r e s s e d , s t a m p e d e n v e l o p e . . . T h i s n o t e f r o m N e i l C u m f e r i r e p l y t m q u e r y i t h l a s t e d i t i o n o A D " D i g a m e a n s ' S p e a k ! ' I i w h a to u S p a n i s h - s p e a k i n g a m i g o s s a ( i n s t e a d o ' h e l l o ' ) w h e n t h e y a n s w e r t h p h o n e . " T h a n k s , N e i l . . . I n t u r n , c a e n l i g h t e n N e i l B o y l e o C a l g a r y ,A l b e r t a w h w r o t e t e n q u i r e w h a t T A N S T A A F L ' m e a n t . T A N S T A A F Lc o m e s f r o m t h b o o k T h M o o n i H a r s h M i s t r e s s b R o b e r t H e i n l e i n ,m p e r s o n a l f a v o u r i t e b t h a t d o g g e d s o l i p s i s t . I s t a n d s f o T h e r e A i n ' t N S u c h T h i n g A F r e e L u n c h , a n a p p a r e n t l y o r i g i n a t e s i t h d a y s o M r H e i n l e i n ' s y o u t h i M i s s o u r i w h e n b a r s w o u l d o f f e r f r e e l u n c h t p a t r o n sw i l l i n g t p a a e x o r b i t a n t p r i c e f o t h e b e e r . . .

d r o p p e d i o o n o t h S u n d a y n i g h t c o n f e r e n c e s o P e o p l e L i n k s e v e r a lw e e k s a g a n w h s h o u l d a r r i v e b u R o P e c k a n R M i c a l ! M i c a la n n o u n c e d t h a t h i c o m p a n y , G r a b ! I n c . , h a b o u g h t t h r i g h t s t t h A S q u a r e d L i v e ! d i g i t i z e r . L i v e ! h a b e e n l o s t i l i m b o f o s o m e t i m e , a C B r a h o a n c o l d o i t h r o u g h v a r i o u s c o r p o r a t e c o n v u l s i o n s c a s e < ? s u s p e n d e d a n i m a t i o n i t h e r e e v e r w a o n e . T h d e v i c e s h o u l d b a v a i l a b l ea y o r e a d t h i s , f o $ 2 9 5 ( U S ) .

S p e a k i n g o R J h a n D a v i d N e e d l e , a n o t h e r A m i g a o r i g i n a l , h a v e b e e nh i r e d b D a v i d M o r s e a E p y x , w h a l s o h i r e d t h e m w h e n h w a C E o A m i g a . T h e y a r c h a r g e d w i t h d e v e l o p i n g n e l i n e o f ' n o n - s o f t w a r e 'p r o d u c t s f o E p y x .

P a r t n e r s , I n c . h e r e i T o r o n t o h a v e u s e d V i d e o s c a p e 3 t c r e a t ec o m p u t e r g r a p h i c s f o C a m p b e l l ' s S o u p c o m m e r c i a l t h e y h a v e p r o d u c e df o t h A m e r i c a n m a r k e t . L o o k o u f o i d u r i n g t h W o r l d S e r i e s . J o h nF o u s t o A m a z i n g C o m p u t i n g t e l l s m t h e y a r e a l s o u s i n g S c u l p t 3 a n h i o w I n t e r c h a n g e r t c o n v e r t o b j e c t a n d c a m e r a m o t i o n f i l e s b e t w e e nS c u l p t a n V i d e o s c a p e . J o h n i h a r d a w o r k w r i t i n g n u m b e r o g r a p h i c ss u p p o r t p a c k a g e s t h a t i n c l u d e t e x t u r e - m a p p i n g p r o g r a m t h a t l e t s y o p r o j e c t a n I F i m a g e o n t o t h s u r f a c e o g r a p h i c o b j e c t . Y o c a b u I n t e r c h a n g e r f o $ 4 9 . 9 5 ( U S ) f r o m 1 h i a S y n d e s i s , 2 W e s t S t r e e t ,W i l m i n g t o n , M a s s a c h u s e t t s , U S 0 1 8 8 7 . J o h n i d i s a s s o c i a t i n g h i m s e l ff r o m A m a z i n g C o m p u t i n g , p a r t l y t a v o i d c o n f l i c t s o i n t e r e s t a n p a r t l yb e c a u s e o d i s s a t i s f a c t i o n w i t h t h e w a t h m a g a z i n e i b e i n g o p e r a t e d . H w i l l c o n t i n u e t a c a t e c h n i c a l c o n s u l t a n t . . . S c u l p t a n V i d e o s c a p e h a v eb e e n j o i n e d b a n i m a t i o n p a c k a g e s F o r m s i n F l i g h t b M i c r o M a g i c a n S i l v e r b I m p u l s e , a n d b y T h D i r e c t o r , a e l a b o r a t e s l i d e s h o w p r o g r a mf r o m t h e R i g h t A n s w e r s G r o u p . . . W o r d P e r f e c t C o r p . h a e s t a b l i s h e ds t r o n g p r e s e n c e o C I a n a r a c t i v e l y s o l i c i t i n g b u r e p o r t s f r o m o w n e r so t h A m i g a v e r s i o n o W o r d P e r f e c t . T h e y h a v e a g o o d n u m b e r t w o r ko ( o b u g s , t h a t i s b u t a r e t b c o m m e n d e d f o t h e i r p r o d u c t s u p p o r t . . .

T h o s e o y o w h j u s t c a n ' t f i n d d r i v e r f o t h a t p r i n t e r y o u ' v e a l w a y sw a n t e d t h o o k u p c a r o l l y o u r o w w i t h t h P p r o g r a m p r t d r v g e n b J o e g e n T h o m s e n . I t ' s l o o w o r k , t h o u g h . T h e r e a r s o m e 3 5 p a r a m e t e r st f i l l i f r o m y o u r p r i n t e r ' s m a n u a l . . . L o o k f o C O M A L s o o n o t h A m i g a . . . A u d i o M a s t e r f r o m A e g i s D e v e l o p m e n t i s o u n d s a m p l ee d i t i n g s o f t w a r e t h a t w o r k s w i t h a l s o u n d d i g i t i z i n g h a r d w a r e . I c o s t s$ 5 9 . 9 5 ( U S ) . . . S o f t C i r c u i t s , I n c . , w h p r e t t y w e l l h a v e t h e n t i r e c o m p u t e r -a i d e d e n g i n e e r i n g m a r k e t f o t h A m i g a t t h e m s e l v e s , a l s o h a v e s o m ei n t r i g u i n g P s o f t w a r e a v a i l a b l e , i n c l u d i n g a p a c k e t r a d i o c o m m u n i c a t i o n sp r o g r a m a n d s l o w s c a n t e l e v i s i o n p r o g r a m . . . B y t e - b y - B y t e h a v e , a f t e rh e a v y a d v e r t i s i n g , s t o p p e d m a k i n g t h e i r P A J r . p e r i p h e r a l b o x . S e e m st h e r e j u s t w a s n ' t b i e n o u g h d e m a n d t m a k e i t w o r t h w h i l e T h e y w i l l

T h G e m s t o n e G r o u p i n o s e l l i n g 6 8 0 2 0 / 6 8 8 8 , b o a r d s f o t h A m i g a h ° W e V e r ' ^ P r o v i d e s u P P o r t f - * e o n e s a l r e a d y o u t t h e r e . . .

C a n a d i a n s w i s h i n g t o b t a i n F a c e f l w h i c h i a m a j o r u p g r a d e t t h T h T r a n s a c t o r D r a c o c o m p i l e r f o t h A m i g a i C h r i s G r a y ,

6 J a n u a r y 1 9 8 8 ; V o l u m e 8 I s s u e O

Page 67: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 67/84

S c h e m e p r o g r a m s e l l s f o $ 1 9 9 . 9 5 ( U S ) . I i t h P h i s v e r s i o n t h a tf o $ 4 9 9 . 9 5 ( U S ) . . . M C I I n u m b e r i n o 7 1 4 2 5 , 1 6 4 6 b u

J o - a n n e P a r k s p e l l s h e f i r s t n a m e w i t h h y p h e n . S o r r y , J .

( C h a r l i e H e a t h , a u t h o r o T X e D ) i o n o t h m o d e r a t o r s o B I X ' sf o r u m s . H a n o t h e r s a r e w o r k i n g o a r p . l i b r a r y . T h i s l i b r a r y

c o n t a i n a l t h s t a n d a r d i n p u t a n o u t p u t r o u t i n e s , p l u s o t h e r u s e f u ls s u c h a s C h e a t h ' s g e t f i l e r e q u e s t e r . P r o g r a m s c a n t h e n b c u i n s i z e b o p e n i n g a n u s i n g a r p . l i b r a r y , r a t h e r t h a n u s i n g c o d ee d b y t h e c o m p i l e r . O c o u r s e , t h e A m i g a r u n n i n g t h p r o g r a m h a t

a r p . l i b r a r y i t h l i b s d i r e c t o r y o t h W o r k b e n c h d i s k . . . C h e a t h i t h s o u r c e o a i n t e r e s t i n g t i d b i t o p r o g r a m m i n g i n f o : i s e e m s t h a t

R e q u e s t ( ) f u n c t i o n , w h i c h o p e n s r e q u e s t e r , c a r e t u r n b e f o r e t h e r h a b e e n f u l l y r e n d e r e d . I a i m m e d i a t e a t t e m p t i m a d e t

g a d g e t i t h r e q u e s t e r , i m a f a i l . T h i s c o u l d b t h v e r y r e a s o nh c o u l d n e v e r g e R e m o v e G a d g e t ( ) a n A d d G a d g e t ( ) t w o r k i t h

u s i m k e e p p r o g r a m . e v e n t u a l l y g a v e u p a n s i m p l yt h c h a n g e s w i t h o u t r e m o v i n g t h g a d g e t c o n c e r n e d f i r s t , a n t h e nR e f r e s h G a d g e t s ( ) . I w o r k s , i l i t t l e c r u d e l y . C h e a t h s u g g e s t s c a l l i n g

D e l a y ( ) f u n c t i o n i m m e d i a t e l y a f t e r t h e R e q u e s t ( ) f u n c t i o n t e n s u r e t h a th r e q u e s t e r h a h a a c h a n c e t b c o m p l e t e l y r e n d e r e d i t h w i n d o w . .

1 . s h o u l d b o u b t h e t i m e y o r e a d t h i s . A l s o o u i t h w h C o m m o d o r e h u n g o t i f o s l o n g . S o m e o n e p o s t e d i t

B B i t h S t a t e s s h o r t l y a f t e r i w a r e c e i v e d a C o m m o d o r e s e v e r a la g o . S i m i l e R e s e a r c h , t h e c r e a t o r s o t h p r o g r a m , i m m e d i a t e l y

l a w s u i t a g a i n s t C B M , b l a m i n g t h e m f o t h l e a k . A c c o r d i n g t a p p a r e n t l y , t h e r e w e r e o n l y t w c o p i e s o t h p r o g r a m i e x i s t e n c e

t h t i m e i w a h a n d e d o v e r t C B M : o n w a i s a f e a S i m i l e ' s l a w y e r ' st h o t h e r w a g i v e n t C o m m o d o r e . W i t h t h r e s o l u t i o n o f t h

, t h p r o g r a m h a b e e n r e l e a s e d . ( A s i d e n o t e , t h s a m eb e h i n d T r a n s f o r m e r h a v e c r e a t e d P C D f t t o f o t h e A t a r i S T ,

p r o v i d e s P e m u l a t i o n w i t h c o l o u r g r a p h i c s . I a p p a r e n t l y c a n n o t d o m e . )

o e m u l a t o r s , R a n d y L i n d e n h e r e i T o r o n t o h a a c c o m p l i s h e da m a z i n g f e a t o p r o g r a m m i n g . H h a w r i t t e n C 6 e m u l a t o r f o t h

t h a t c a h a n d l e s u c h a r c a n a a r a s t e r i n t e r r u p t s , f a s t l o a d e r s a n i n t e n d e d f o t h S I c h i p . I r e c e n t d e m o n s t r a t i o n a t h e T r a n s a c t o r

L i n d e n ' s e m u l a t o r r a e v e r y p r o g r a m t h r o w n a i t e x c e p t f o s o m ep r o t e c t e d p r o d u c t s , t h o u g h n o a f u l l s p e e d . A m o n g t h p r o g r a m ss e v e r a l t h a t p u m p t h e g r a p h i c s a n d s o u n d p r e t t y h a r d .

t h C 6 e m u l a t o r I . h a v e m e n t i o n e d i p r e v i o u s c o l u m n s , L i n d e n ' sn o r e q u i r e h a r d w a r e i n t e r f a c e u n l e s s y o c a l l c a b l e a i n t e r f a c e .

h p r o g r a m c a n u s e a 1 5 4 1 c o n n e c t e d v i t h c a b l e t t h A m i g a ' s s e r i a lo r e g u l a r 3 . 5 " A m i g a d r i v e c a b u s e d t p a r t i t i o n a n f o r m a t

o d i s k i 1 5 4 1 f o r m a t .

h p r o g r a m i n o a a b s o l u t e l y p e r f e c t e m u l a t i o n : i a d d i t i o n t t h s p e e d ( r o u g h l y h a l f t h a t o t h 6 4 d e p e n d i n g o t h p r o g r a m ) ,

c h a n g i n g r a s t e r i n t e r r u p t s c a c a u s e i t s t u m b l e , a s w e l l a s d o u b l e -s p r i t e s . N o d o e s i w o r k w i t h a l f a s t l o a d e r s ; b e c a u s e t h e y a r s

n t o t i m i n g , L i n d e n h a t w r i t e c u s t o m c o d e f o e a c h o n e .

t h i s p o i n t , L i n d e n i t h i n k i n g o s e l l i n g t h p r o g r a m f o $ 4 9 . 9 5 ( C a n . ) ,$ 6 9 . 9 5 w i t h t h c a b l e . A l a s t , r e l a t i v e f i l e s o t h A m i g a !

h a v e b e e n g r o w i n g r a t h e r w e a r y l a t e l y o t h e n d l e s s m o a n i n g f r o m s o m eq u a r t e r s a b o u t t h d e f i c i e n c i e s o A m i g a D O S o r t h e l a c k o c h e a p , f a s th a r d d r i v e . h a v e p o i n t e d o u t h a t A m i g a D O S h a h a n o w h e r e n e a r t h t i m e a n m o n e y p u i n t o i t d e v e l o p m e n t a U n i x o M S - D O S . A f o h a r d

d r i v e s , n o - o n e c a p r o d u c e a c h e a p o n f o m a r k e t c o n s i s t i n g o a m o s t2 0 0 , 0 0 0 m a c h i n e s . T h e c o n o m i e s o s c a l e j u s t d o n ' t c o m e i n t o p l a y .

w a g r a t i f i e d t h e n t r e c e i v e t h i s r e s p o n s e f r o m C h r i s S i e b e n m a n n ,c u r r e n t l y p r o g r a m m e r a G o l d D i s k :

" * S i g h . I g u e s s w j u s t h a v e n ' t t a l k e d r e c e n t l y a b o u t t h g o o da s p e c t s o t h A m i g a , l i k e m u l t i t a s k i n g a n s y s t e m a r c h i t e c t u r et h a t l e m b u i l d p r i n t s p o o l e r w i t h t h r e e s i m p l e p r o g r a m s , o r t h f a c t t h a t t h e A m i g a ( w i t h e n o u g h m e m o r y ) i j u s t a b o u t m i d e a ld e v e l o p m e n t e n v i r o n m e n t . k n o w o n o t h e r m a c h i n e o w h i c h s om a n y n e a t h a c k s ( P o p C U , C l i c k T o F r o n t , F A C Q v d O : , a n m a n ym o r e ) c o u l d h a v e b e e n d o n e s t r a n s p a r e n t l y a n w o r k t o g e t h e r s w e l l . I t ' s w o n d e r f u l s y s t e m . . . w h i c h i w h t h b a b i t s p r o v o k em s o m u c h .

A t t h h a r d w a r e . . . a m e n . W h e n b u e x p a n s i o n h a r d w a r e , I ' g o i n g ^ t p a e x t r a f o A S D G o C o m s p e c r e l i a b i l i t y w i t h o u t e v e nb l i n k i n g . I t ' s w o r t h i t F o w h a t y o u g e t , t h p r i c e s A R E N T o u o l i n e . N a m e o n o t h e r m a c h i n e w i t h c h e a p a u t o c o n f i g u r i n g H D s . I ' l lg i v e y o h i n t . . . i i s ' t m a d e b I B M . "

C o m i n g u n e x t t i m e . . .C B C a n a d a h a k i n d l y l e n t m 2 0 0 0 f o e v a l u a t i o n . T h f u l l r e p o r t w i l lb i t h e n e x t e d i t i o n o A m i g a D i s p a t c h e s , b u t c a t e l l y o r i g h t n o w , I ' t h o r o u g h l y s p o i l e d . d o n ' t w a n t t h a v e t g o b a c k t m 1 0 0 0 . I a d d i t i o nt t h s t a n d a r d M o R A M , t h i s 2 0 0 0 h a s a 2 0 M h a r d d i s k s h a r e d b t h A m i g a a n B r i d g e c a r d . T h h a r d d i s k i c o n s i d e r a b l y f a s t e r t h a n t h f l o p p i e s : t y p i c a l c o m p i l e a n l i n k s e e m s t t a k e o n l y a b o u t o n q u a r t e rt h t i m e i d i w i t h f l o p p i e s . A i n t e r e s t i n g s i d e - e f f e c t o h a v i n g t h e e x t r a . M o R A i t h a t h a v e s t a r t e d u s i n g t h W o r k b e n c h a g a i n , r a t h e r t h a nj u s t t h C L I . I r e a l l y s h o w s t h a t t h A m i g a d o e s n ' t c o m e i n t o i t o w u n t i ly o u h a v e d e c e n t a m o u n t o m e m o r y t w o r k w i t h .

T h 2 0 0 0 o l o a n t m i W e s t G e r m a n m o d e l . A y o p r o b a b l y k n o w , i w i l l b r e p l a c e d b t h s o - c a l l e d W e s t C h e s t e r d e s i g n , a l s o k n o w n a s t h eB 2 0 0 0 . T h i s h a s o m e s i g n i f i c a n t i m p r o v e m e n t s , i n c l u d i n g v i d e o s l o t w i t h

h i g h e r n u m b e r o f s i g n a l s a v a i l a b l e , T a t A g n e s ' c h i p a n M o R A o t h C H I P b u s , w h i c h o p e n s t h d o o r t p o s s i b l e u p g r a d e o t h g r a p h i c s p e r f o r m a n c e , a n c l e a n e r d e s i g n o v e r a l l . h o p e t b a b l e t b r i n g y o r e v i e w o t h i s m a c h i n e a w e l l . H m m m . M a y b e c a j u s t g e C B t k e e p l e n d i n g m r e v i e w m a c h i n e s . . .

B t h w a y , C o m m o d o r e h a j u s t p u b l i s h e d 7 7 m ? A 5 0 0 / A 2 0 0 0 T e c h n i c a lR e f e r e n c e G u i d e , w h i c h p r o v i d e s c o m p l e t e s c h e m a t i c s f o t h 5 0 0 , t h W e s tG e r m a n 2 0 0 0 a n t h W e s t C h e s t e r 2 0 0 0 , i n - d e p t h h a r d w a r e i n f o a n c o m p l e t e B r i d g e c a r d d o c u m e n t a t i o n , i n c l u d i n g t h J a n u s l i b r a r y c a l l s . I c a b o r d e r e d f r o m L a u r e n B r o w n ( m i s t a k e n l y r e f e r r e d t a • L a u r i e ' i m l a s t c o l u m n s o r r y , L a u r e n ) a C B W e s t C h e s t e r i P A f o $ 4 ( U S ) .

A l s o c o m i n g u p a r r e p o r t s o t h a r r i v a l o T e f o t h A m i g a , v e r s i o n o t h L a t t i c e c o m p i l e r , a n o n A m i E x p o , t h A m i g a E x p o s i t i o n t b h e l dO c t o b e r 1 0 - 1 2 , i N e Y o r k . w a i n v i t e d b t h o r g a n i z e r s t a p p e a r o o n o t h u s e r p a n e l s b u t , t o m b i t t e r d i s a p p o i n t m e n t , c o u l d n o r a i s e t h f u n d s t o g o . S a d r a g o o n i n g N i c k a n K a r l , w h a r g o i n g , i n t og r a b b i n g e v e r y b i o i n f o r m a t i o n t h e y c a f o m e

U n t i l t h e n , k e e p t h o s e c a r d s a n l e t t e r s , e l e c t r o n i c a n o t h e r w i s e , c o m i n g ,f o l k s . T h e y ' r e a p p r e c i a t e d .

C I S : 7 1 4 2 6 , 1 6 4 6P e o p l e L i n k : A M T A GB I X : d i s p a t c h e r

G E n i e : t g r a n t h a mB l o o m B e a c o n B B S : T i G r a n t h a m( 4 1 6 2 9 7 - 5 6 0 7 )

T h T r a n s a c t o r 6 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 68: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 68/84

T W M iP a n e l e s s A p p r o a c h t T i n y W i n d o w M a n a g e m e n t

b N i c k S u l l i v a n

M o s t p r o g r a m s o t h A m i g a c a n b e d i v i d e d i n t o t h r e e f a i r l y t i d yc l a s s e s . T h c o m m o n e s t c l a s s c o n s i s t s o p r o g r a m s l i k e D I a n L I S T , t h a t y o i n v o k e a c o m m a n d s , t h a t d t h e i r w o r k t h e n e x i t .A n o t h e r c l a s s c o n s i s t s o h a n d l e r s , l i k e t h c o n s o l e h a n d l e r C o n -M a n , o P o p T o F r o n t , f r o m f e T r a n s a c t o r s a g o . T h e s e p r o g r a m s ,o t h e i r o f f s p r i n g , l i v e i t h s y s t e m u s u a l l y u n t i l n e x t r e b o o t b u t ,b e c a u s e t h e y r e q u i r e n u s e r i n t e r a c t i o n , t h e y a r i n v i s i b l e .

P r o g r a m s i t h t h i r d c l a s s a r e t h e o n e s y o i n t e r a c t w i t h f o a e x t e n d e d p e r i o d o t i m e , s u c h a t e x t e d i t o r s , t e r m i n a l e m u l a t o r sa n p a i n t p r o g r a m s , o t h a t y o m i g h t k e e p a r o u n d f o s p o r a d i ci n t e r a c t i o n , s u c h a P o p C o l o u r s a n S t r u c t u r e B r o w s e r . O n b e n e f i to t h A m i g a ' s m u l t i t a s k i n g e n v i r o n m e n t i t h a t y o d o n ' t h a v e t t a k e s u c h p r o g r a m s d o w n i o r d e r t d s o m e t h i n g e l s e . Y o c a s w i t c h r e a d i l y f r o m y o u r e d i t o r t y o u r t e r m i n a l , f o i n s t a n c e , a n k e e p y o u r t e x t i n m e m o r y ; y o u c a n s w i t c h f r o m t h t e r m i n a l b a c k t t h e d i t o r a n s t a y o n - l i n e .

T h e x t e n t t w h i c h y o u c a t a k e a d v a n t a g e o t h i s c a p a b i l i t yd e p e n d s , o c o u r s e , o h o w m u c h R A y o h a v e i y o u r s y s t e m i r e l a t i o n t t h s i z e o f t h p r o g r a m s y o u ' r e r u n n i n g . E v e n w i t h a l o o e x p a n s i o n R A M , t h o u g h , y o a r s t i l l l i m i t e d b t h a m o u n t o a v a i l a b l e " c h i p R A M " t h s p e c i a l a r e a o m e m o r y t h a t t h A m i g a ' sc u s t o m c h i p s c a u s e . O c u r r e n t A m i g a s , c h i p R A i l i m i t e d t 5 1 2 K a n d , w h i l e t h a t s o u n d s l i k e l o t , i c a q u i c k l y g e e a t e n u b p r o g r a m s t h a t u s l o t s o w i n d o w s , c o l o u r f u l s c r e e n s , g a d g e t s , a n o t h e r d i s p l a y e l e m e n t s t h a t n e e d c h i p R A t s u r v i v e .

T h o t h e r p r o b l e m w i t h r u n n i n g l o o i n t e r a c t i v e p r o g r a m ss i m u l t a n e o u s l y i t h a t t h e y t e n d t c r o w d y o u r m o n i t o r s c r e e n . T h a tm a k e s f o l o o d e p t h - a r r a n g i n g a n r e s i z i n g a y o f l i t f r o m o n t a s k t a n o t h e r t h i n f a m o u s " e l e c t r o n i c s h e l l - g a m e " a n c a g e t p r e t t y t i r e s o m e i y o u h a v e t d l o o i t f e w p r o g r a m s e v e np u u f u l l - s i z e w i n d o w a n w o n ' t a l l o w y o t g e a t h W o r k b e n c h s c r e e n b e h i n d .

O n a p p r o a c h t h a t s o m e p r o g r a m s h a v e t a k e n t o r e l i e v e t h o s c r e e n c o n g e s t i o n h a b e e n t s u p p l y " t i n y w i n d o w m o d e " , w h i c hc a n b e i n v o k e d w h e n t h p r o g r a m i n o i n a c t i v e u s e . T h i s i d e a w a a r r i v e d a i n d e p e n d e n t l y q u i t e a w h i l e a g i a t l e a s t t w p r o g r a m sk n o w o R i c k S t i l e s ' s h a r e w a r e t e x t e d i t o r U e d i t , a n C h r i sZ a m a r a ' s P o p C o l o u r s . I U e d i t p a r t i c u l a r l y , u s o t h t i n y w i n d o w( i n v o k e d b c l i c k i n g o t h e d i t o r ' s t i t l e b a r ) a c h i e v e s s i g n i f i c a n ts a v i n g s i c h i p R A M . U s i n g n o r m a l 6 4 b 2 0 w i n d o w o t h W o r k b e n c h s c r e e n , w h i c h h a t w b i t - p l a n e s , U e d i t n e e d s 3 2 f o i t b i t - m a p , p l u s b i m o r e f o g a d g e t s . I t t i n y w i n d o w , h o w e v e r , i

m e r e 1 0 b 2 p i x e l s i s i z e , a n s c o n s u m e s l e s s t h a n 6 0 b y t e s . C l e a r l y , t h c h i p R A p e n a l t y f o r u n n i n g c o n c u r r e n t a p p l ic a t i o n s w o u l d b e c o n s i d e r a b l y e a s e d i t h u s o t i n y w i n d o wm o d e w a s m o r e w i d e s p r e a d .

t i n y w i n d o w c o n s i s t s o f n m o r e t h a n a i n c h o t w o t i t l e b a w i t h a e q u i v a l e n t t h i c k n e s s o e m p t y w i n d o w b e n e a t h . I i d r a g g a b l e , a n m a b d e p t h a r r a n g e d ( s i n c e p a r t o i t p u r p o s e i t k e e p t h a p p l i c a t i o n t h a t o w n s i o u o y o u r h a i r ) , b u n o r e s i z a b l e .C l i c k i n g i t h e m p t y p a r t r e a c t i v a t e s t h e p a r e n t p r o g r a m , p r o m p ti n i t t a k e t h t i n y w i n d o w d o w n , p u i t w o r k i n g w i n d o w ( o s c r e e n ) b a c k u p a n c a r r y o w i t h b u s i n e s s a u s u a l .

O n r e a s o n f o t h i s a r t i c l e i t a d v o c a t e t h u s o f t i n y w i n d o w s i p r o g r a m s i n c l u d i n g c o m m e r c i a l p r o g r a m s i w h i c h t h e i r u s i a p p r o p r i a t e ( f o r o n a p p r o a c h t i m p l e m e n t i n g t i n y w i n d o w m o d es e t h l i s t i n g s f o " T W M " a n " T e s t l " b e l o w ) . S u p p o s e t h i s i d e aw e r e g e n e r a l l y a d o p t e d , t h o u g h , m a k i n g i e a s i e r t r u s e v e r a ls u c h p r o g r a m s c o n c u r r e n t l y . N o t h u s e r h a s a n o t h e r p r o b l e m :t h n e d i s o r d e r o T W ( T i n y W i n d o w L i t t e r ) , i w h i c h o n e ' sv i s i b l e w o r k s p a c e i o b s c u r e d b a n n o y i n g s w a r m s o f t i n y w i n d o w st h a t c o n t i n u a l l y s e e m t b g e t t i n g i y o u r w a a y o w o r k , n m a t t e r h o m u c h y o t r y t o s h u f f l e t h i n g s a r o u n d .

S t h o t h e r r e a s o n f o t h i s a r t i c l e i t p r e s e n t T W M , f o T i n yW i n d o w M a n a g e r ' , a s m a l l a n e a s i l y i m p l e m e n t e d p i e c e o c o d et h a t e n a b l e s p r o g r a m s t s u p p o r t a t i n y w i n d o w m o d e w h i l e g i v i n gu s e r s m e t h o d o a v o i d i n g t h a n g u i s h o T W L , a n t h c o n s e q u e n td i s r u p t i o n o t h e i r l i v e s .

F r o m t h u s e r ' s p o i n t o v i e w , T W i a k i n d o c e n t r a l s t o r a g ec o m p a r t m e n t i w h i c h s l e e p i n g p r o g r a m s a r h o u s e d , a n f r o mw h i c h t h e y c a n b e a c t i v a t e d . T h p r o g r a m s d n o h a v e t m a i n t a i na n d i s p l a y o t h e i r o w n o e v e n t i n y w i n d o w , s t h u s e r ' ss c r e e n i f r e e f r o m c l u t t e r . T W M ' s o w w o r k i n g w i n d o w c o n t a i n sg a d g e t s b e a r i n g t h n a m e s o i t " c l i e n t p r o g r a m s " . W h e n t h e u s e rc l i c k s o o n o t h e s e g a d g e t s , t h c o r r e s p o n d i n g c l i e n t p r o g r a m i a w o k e n a n d r e s u m e s o p e r a t i o n . T W a l s o h a i t o w t i n y w i n d o wm o d e ; w h e n t h a t i i u s e , t h a m o u n t o c h i p R A j o i n t l yc o n s u m e d f o g r a p h i c s b t h c l i e n t p r o g r a m s a n d T W i t s e l f i v e r y s m a l l . W h e n t h s y s t e m i h o s t i n g t w o m o r e a p p l i c a t i o n st h a t s u p p o r t T W M , t h e r e i s i g n i f i c a n t s a v i n g s i b o t h r e s o u r c e sa n c o n v e n i e n c e . O c o u r s e , e v e n i T W i n o r u n n i n g , a p p l i c at i o n s t h a t s u p p o r t i w i l l r u n o r m a l l y - b u t i n s t e a d o d i s a p p e a r i n ge n t i r e l y w h e n t h e y g t s l e e p , t h e y w i l l p u u t i n y w i n d o w i t h u s u a l w a y .

F r o m t h p r o g r a m m e r ' s p o i n t o v i e w , T W c o m e s i t w p a r t st h p r o g r a m T W i t s e l f , a n s h o r t C - l a n g u a g e m o d u l e c a l l e dt w m C l i e n t . c ( a l s o a v a i l a b l e i M o d u l a s e t h r e v i e w o B e n c hm a r k M o d u l a i t h i s i s s u e ) . T h t w m C l i e n t c o d e c a b c o m p i l e da n l i n k e d w i t h a n a p p l i c a t i o n t h a t s u p p o r t s a t i n y w i n d o w m o d e .L e u s u p p o s e t h a t t h i s c l i e n t a p p l i c a t i o n h a b e e n r u n n i n g i i t a c t i v e m o d e b u n o w , a r e s u l t o f s o m e a c t i o n o t h u s e r ' s( p e r h a p s m e n u s e l e c t i o n , p e r h a p s c l i c k i n g o a g a d g e t ) i h a

T h T r a n s a c t o r 6 J a n u a r y 1 9 8 8 ; V o l u m e 8 I s s u e O

Page 69: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 69/84

d o w n i t w o r k i n g d i s p l a y a n i a b o u t t p u u i t t i n ya n d g o t s l e e p .

f o r e t a k i n g t h a t s t e p , t h a p p l i c a t i o n n o c a l l s t h f u n c t i o ni t h t w m C l i e n t m o d u l e , p a s s i n g a a a r g u m e n t t h

b y w h i c h i w o u l d l i k e t b k n o w n , a i n

P o s t M e ( D P o p C o l o u r s B ) ;

i i t t u r n , s e a r c h e s t h s y s t e m f o p u b l i c m e s s a g e p o r tt h n a m e " T i n y W i n d o w M a n a g e r " . I t h s e a r c h s u c c e e d s ,

s e n d s m e s s a g e t t h a t p o r t w i t h t h n a m e o t h c l i e n t ,n w a i t s a i t o w m e s s a g e p o r t f o r e p l y . E f f e c t i v e l y , t h c l i e n t

o n h a n o l e t i t s e l f g t s l e e p a n d , b e c a u s e i h a c l o s e dw o r k i n g w i n d o w , t h e r e a r e n v i s i b l e s i g n s o i t e x i s t e n c e .

h m e s s a g e s e n t b t h c l i e n t i n o p i c k e d u p b y t h T W w h i c h t h u s e r h a e a r l i e r r u n , a n d w h i c h i n o d i s p l a y

o n o i t o w w i n d o w s ( e i t h e r t h t i n y w i n d o w o t h l a r g e rw i n d o w ) o n t h u s e r ' s s c r e e n . O r e c e i p t o t h m e s s a g e

W c r e a t e s g a d g e t b e a r i n g t h c l i e n t a p p l i c a t i o n ' s n a m e . T h w i l l b d i s p l a y e d i T W M ' s w o r k i n g w i n d o w ( i m m e d i a t e l y , i

w i n d o w i u p ) . T h e r e m a b o t h e r g a d g e t s i t h w i n d o w a l s oo n e f o e a c h c l i e n t a p p l i c a t i o n . T h i s i t h o n l y i n d i c a t i o n t h a t t h

s t i l l e x i s t a n d , w h e n T W i i i t t i n y w i n d o w m o d e , t h e r en s i g n o t h e m a a l l . C h i p R A i c o n s e r v e d , a n t h u s e r ' s

i u n c l u t t e r e d . W h e n t h u s e r l a t e r c l i c k s o t h e g a d g e t ,W r e p l i e s t o t h m e s s a g e t h c l i e n t s e n t , d e l e t e s t h g a d g e t , t h e n

a b o u t t h c l i e n t a l t o g e t h e r .

n o t P o s t M e ( ) , w a i t i n g a s l e e p a i t m e s s a g e p o r t f o r e p l yi t m e s s a g e . T h r e p l y h a f i n a l l y c o m e , s i g n i f y i n g t h a t t h e u s e r

a s e l e c t e d t h c l i e n t ' s g a d g e t i t h T W w o r k i n g w i n d o w , a n dt h c l i e n t t p u u i t o w w o r k i n g w i n d o w a g a i n . P o s t M e ( )

o r e t u r n s t t h c l i e n t , w i t h t h v a l u e T R U E , a n t h c l i e n t g o e st w o r k .

e r a l t h i n g s m i g h t h a v e g o n e w r o n g a l o n g t h w a y . T h m o s to t h e s e i t h a t t h e u s e r m a n o c u r r e n t l y h a v e T W

r e m o t e r p o s s i b i l i t y i t h a t T W m i g h t h a v e f a i l e d t m e m o r y f o t h c l i e n t ' s g a d g e t , o r c o u l d n o o p e n w i n d o w .

a l t h e s e c a s e s , P o s t M e ( ) r e t u r n s F A L S E t t h c l i e n t , w h t h e nt h a t i i n e c e s s a r y t p u u t i n y w i n d o w o i t o w a f t e r a l l .

y o w i l l s e i t h c o d e t h a t f o l l o w s , t h e r e a r e o t h e r d e t a i l s . I t h c l i e n t a p p l i c a t i o n w i s h e s t w a k e i t s e l f u ( i r e s p o n s e t

o s o m e o t h e r k i n d o m e s s a g e ) w h i l e i i i T W M ' s c a r e ,U n P o s t M e ( ) f u n c t i o n i a l s o p r o v i d e d . M o s t c l i e n t s w o n ' t n e e d

i n t h a t c a s e , t h p r o g r a m m e r c a r e m o v e U n P 6 s t M e ( )t w m C l i e n t . c t s h r i n k t h c o d e e v e n f u r t h e r . A n o t h e r d e t a i l i

T W r e m e m b e r s w h e r e t h u s e r l a s t p l a c e d i t w i n d o w s , a n t h e m t t h c h o s e n p o s i t i o n e a c h t i m e t h e y a r r e - o p e n e d .

a n P o p C o l o u r s a l s o h a v e t h i s f e a t u r e , a n i i r e c o m m e n d e do t h e r t i n y w i n d o w p r o g r a m s i n c l u d e i ( s e e t h p e r t l y n a m e d

f u n c t i o n b e l o w f o s a m p l e c o d e ) .

h i n t e n t o f T W i t i n s t i t u t e s t a n d a r d o w h i c h a l t i n y w i n d o wg r a m s c a n t a k e a d v a n t a g e . T h e r e f o r e a l t h e f o l l o w i n g c o d e i

r e d i s t r i b u t a b l e , a n m a b u s e d i a n p r o g r a m - P D ,e , o c o m m e r c i a l . N e v e r s i o n s o P o p C o l o u r s a n t h X e v a l u a t i o n p r o g r a m f r o m T r a n s a c t o r ' s A m i g a D i s k #

o s u p p o r t T W M , a n w i l l b a v a i l a b l e o C o m p u S e r v e ' s A m i g a -

F o r u m , a l o n g w i t h T W i t s e l f , b t h t i m e t h i s m a g a z i n e i i y o u rh a n d s . T h e y w i l l a l s o a p p e a r o o u s e c o n d A m i g a D i s k , w h i c hs h o u l d b o u i J a n u a r y .

L I S T I N G ! : T W M . C/ T W M . c

T i n y - W i n d o w M a n a g e r v 1 . 0b N i c k S u l l i v a n

( c 1 9 8 7 T r a n s a c t o r P u b l i s h i n g I n c .

T h i s p r o g r a m i f r e e l y r e d i s t r i b u t a b l e p r o v i d e d t h a t n c h a r g e i m a d ef o t h r e d i s t r i b u t i o n b e y o n d r e a s o n a b l e r e p r o d u c t i o n c o s t s , a n t h a t n c h a n g e s a r m a d e e x c e p t w i t h t h p r i o r w r i t t e n a p p r o v a l o T r a n s a c t o rP u b l i s h i n g I n c . , 8 W e s t W i l m o t S t # 1 0 , R i c h m o n d H i l l , O n t a r i o L 4 1 K 7 .

T W p r o v i d e s s t o r a g e a r e a i w h i c h a p p l i c a t i o n s t h a t a r i n a c t i v e , b u r u n n i n g , c a w a i t t b r e - a c t i v a t e d w i t h o u t u s i n g a n c h i p R A M . I t h u sp r o v i d e s a a l t e r n a t i v e t o t h " t i n y w i n d o w " a p p r o a c h t m i n i m i z i n g c h i pR A u s e , a e x e m p l i f i e d b y s u c h p r o g r a m s a U e d i t a n P o p C o l o u r s .

W h e n T W i r u n , i p u t s u i t o w t i n y w i n d o w , a n c r e a t e s p u b l i cm e s s a g e p o r t . C l i e n t a p p l i c a t i o n s s h o u l d c h e c k f o t h e e x i s t e n c e o t h i sp o r t a n d , i i i p r e s e n t , s e n d a " t w M e s s a g e " ( a d e f i n e d i t w m . h ) w i t ht h t w m _ a c t i o n f i e l d s e t T W M _ A C T I O N _ A D D w h e n t h e y w i s h t g t s l e e p .W h e n T W M ' s t i n y w i n d o w i c l i c k e d i t h e r e a f t e r , l a r g e r w i n d o w w i l l b p u u c o n t a i n i n g g a d g e t s b e a r i n g t h n a m e s o e a c h c l i e n t a p p l i c a t i o nt h a t h a b e e n a d d e d . C l i c k i n g o n o n e o t h e s e g a d g e t s w i l l c a u s e t h t w M e s s a g e t b r e p l i e d t o w h i c h i t h s i g n a l f o t h c l i e n t t or e a w a k e n . A t h s a m e t i m e a t h r e p l y i s e n t , t h l a r g e T W w i n d o w w i l lb t a k e n d o w n , a n t h g a d g e t f o t h a t c l i e n t r e m o v e d .

I c l i e n t w i s h e s t r e a c t i v a t e i t s e l f b e f o r e i t T W g a d g e t i c l i c k e d , o i f i w i s h e s t e x i t a l t o g e t h e r , i s h o u l d f i r s t s e n d at w M e s s a g e w i t h t h t w m _ a c t i o n f i e l d s e t t o T W M _ A C T I O N _ D E L E T E .

T h t w m _ a c t i o n f i e l d i u s e d b y T W t r e t u r n c o d e t t h c l i e n t t h a ti n d i c a t e s w h e t h e r t h r e q u e s t e d o p e r a t i o n w a s u c c e s s f u l . T h e c o d e f o s u c c e s s i E _ O K . O t h e r p o s s i b i l i t i e s a r e :

E _ N O _ M E M c l i e n t h a a s k e d T W t a d g a d g e t , b u T W w a u n a b l e t a l l o c a t e m e m o r y f o t h g a d g e t s t r u c t u r e .

E J V B A N D O N . S H I P 1 c l i e n t h a a s k e d T W t a d g a d g e t w h i l eT W h a i t l a r g e w i n d o w u p I t h i s c a s e , T W c l o s e s t h e l a r g e w i n d o w ,a n r e - o p e n s i t a f t e r r e t h i n k i n g t h g a d g e t p o s i t i o n s a n t h w i n d o w s i z e .

2 T h u s e r h a c l i c k e d o T W M ' s t i n y w i n d o w , o c l o s e d i t l a r g ew i n d o w , c a u s i n g T W t c l o s e t h e c u r r e n t w i n d o w a n d a t t e m p t t o p e n t h o t h e r o n e .

I t h w i n d o w o p e n f a i l s i n e i t h e r o f t h e s e c a s e s , T W s e n d s a l c u r r e n t c l i e n t s t h i s e r r o r m e s s a g e , t h e n e x i t s , s i n c e i h a n m e a n so r e c o v e r y .

E J A S K J J N K N O W N c l i e n t h a s e n t T W M J \ C T I O N _ D E L E T E , b u T W d o e s n o c u r r e n t l y h a v e a g a d g e t f o t h a t c l i e n t .

E N A C T I O N . U N K N O W N m e s s a g e h a b e e n r e c e i v e d w i t h t h t w m _ a c t i o n f i e l ds e t a u n k n o w n c o d e . . . c u r r e n t l y t h o n l y p o s s i b i l i t i e s a r T W M J \ C T I O N J D E L E T E a n d T W M _ A C T I O N J \ D D .

S a m p l e c o d e f o a p p l i c a t i o n s w i s h i n g t i n t e r f a c e c o r r e c t l y w i t h T W i c o n t a i n e d i t h f i l e t w m C l i e n t c . T h h e a d e r f i l e t w m . h i a l s or e q u i r e d . B e f o r e u s i n g o t h e r f u n c t i o n s i t h i s f i l e , t h c l i e n t s h o u l dc a l l P o s t M e ( ) , s u p p l y i n g a s a a r g u m e n t t h n a m e t h a t s h o u l d a p p e a r o i t g a d g e t i t h T W w i n d o w . T h n a m e c a b u t G A D G N A M E S I Z E - c h a r a c t e r s i l e n g t h ( c u r r e n t l y 1 c h a r a c t e r s ) ; e x c e s s c h a r a c t e r s a r r e m o v e d .

T h f u n c t i o n P o s t M e ( ) i t w m C l i e n t c s h o u l d b c a l l e d w h e n t h c l i e n t w i s h e s t d e a c t i v a t e . I t h i s f u n c t i o n r e t u r n s T R U E , t h c l i e n ts h o u l d r e s u m e i t s l i f e a a a c t i v e a p p l i c a t i o n . I i r e t u r n s F A L S E ,e i t h e r T W i n o p r e s e n t i t h s y s t e m o e l s e t h e a t t e m p t t p o s t f a i l e df o s o m e r e a s o n . I t h i s c a s e , t h e c l i e n t s h o u l d t a k e a a l t e r n a t i v ea p p r o a c h t d e a c t i v a t e d l i v i n g ( l i k e m a k i n g i t o w t i n y w i n d o w ) , o e l s en o t a l l o w i t s e l f t b d e a c t i v a t e d .

P r o g r a m s t h a t w i s h t b a b l e t r e c e i v e m e s s a g e s e v e n w h e n d e a c t i v a t e d( t i m e - o u t s , f o e x a m p l e ) , w i l l n e e d t u s m o d i f i e d v e r s i o n o P o s t M e ( ) .I f s u c h a p r o g r a m w i s h e s t r e a c t i v a t e b e f o r e i t g a d g e t h a b e e n c l i c k e di t h T W w i n d o w , i s h o u l d f i r s t c a l l U n P o s t M e ( ) ( n a r g u m e n t s , n r e t u r n ) t o i n f o r m T W t h a t t h g a d g e t s h o u l d b t a k e n d o w n . P r o g r a m s t h a tw i l l N O n e e d t c a l l U n P o s t M e Q ( i . e . m o s t p r o g r a m s ) c a u s e a v e r s i o no t w r n C l i e n t c f r o m w h i c h t h U n P o s t M e ( ) f u n c t i o n a n a l r e f e r e n c e s t t h g l o b a l v a r i a b l e D e l m s g h a v e b e e n r e m o v e d .

B e f o r e t h e f i r s t c a l l t P o s t M e ( ) , t h e f u n c t i o n t w m l n i t Q m u s t b i n v o k e d t s e u t h e r e q u i r e d m e s s a g e s a n p o r t s t h a t P o s t M e ( ) w i l l n e e d .

B e f o r e t h c l i e n t e x i t s , i s h o u l d c a l l t h f u n c t i o n U n P o s t M e Q t d e a l l o c a t e r e s o u r c e s t w m l n i t ( ) h a a l l o c a t e d .

i n c l u d e " h e a d e r / t w m . h "/ T h i s i n v i s i b l e g a d g e t J i v e s i T W M ' s t i n y w i n d o w . W h e n c l i c k e d o n , t h e

t i n y w i n d o w i r e m o v e d a n d T W M ' s w o r k i n g w i n d o w i o p e n e d . * s t r u c t G a d g e t W a k e U p G a d g e t

T h T r a n s a c t o r 6 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 70: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 70/84

N U L L ,2 , 1 0 , 1 1 6 , 1 0 ,G A D G H N O N E ,R E L V E R I F Y ,B O O L G A D G E T ,N U L L ,N U L L ,N U L L ,0 N U L L ,0 N U L L ,

/ / l e f t , t o p , w i d t h , h e i g h t/ f l a g s n h i g h l i g h t i n g/ a c t i v a t i o n f l a g s/ ♦ g a d g e t t y p e/ n i m a g e r y/ n a l t e r n a t e i m a g e r y/ n t e x t/ m u t u a l e x c l u d e/ S p e c i a l l n f o/ g a d g e t I / u s e r d a t a

s t r u c t N e w W i n d o w w t i n y4 8 0 , 6 0 , 1 2 0 , 2 0 , / l e f t , t o p , w i d t h , h e i g h t

/ d e t a i l p e n , b l o c k p e M D C M P f l a g s

0 t G A D G E T U P

C L O S E W I N D O W ,W I N D O W D R A GI W I N D O W C L O S E

W I N D O W D E P T H ,& W a k e U p G a d g e t ,N U L L ,( U B Y T E * ) " T W M ' ,N U L L ,N U L L ,0 , 0 , 0 , 0 ,

* * *

/ ♦ W i n d o w f l a g s

/ a p p l i c a t i o n g a d g e t l i s t * / s p e c i a l c h e c k m a r k i m a g e r y ♦ / w i n d o w t i t l e/ c u s t o m s c r e e n p o i n t e r/ s u p e r b i t m a p p o i n t e r/ m i n / m a x w i d t h a n h e i g h t

W B E N C H S C R E E N / s c r e e n t y p es t r u c t N e w W i n d o w w h u g e

4 8 0 , 6 0 , 0 , 0 , / l e f t , t o p , w i d t h , h e i g h t0 1 / * d e t a i l p e n , b l o c k p e

G A D G E T U PM D C M P f l a g s/ ♦ W i n d o w f l a g s

C L O S E W I N D O W ,W I N D O W D R A G

W I N D O W C L O S EW I N D O W D E P T HS M A R T . R E F R E S H ,

♦ ♦

* ♦

N U L L ,N U L L ,( U B Y T E * ) T W M " ,N U L L ,N U L L ,0 , 0 , 0 , 0 ,W B E N C H S C R E E N / s c r e e n t y p e

/ a p p l i c a t i o n g a d g e t l i s t ♦ / s p e c i a l c h e c k m a r k i m a g e r y ♦ / ♦ w i n d o w t i t l e/ c u s t o m s c r e e n p o i n t e r/ s u p e r b i t m a p p o i n t e r/ m i n / m a x w i d t h a n h e i g h t

s t r u c t T e x t A t t r t w m F o n t( U B Y T E * ) ' t o p a z . f o n t \T O P A ^ E I G H T Y ,F S . N O R M A L ,F P F . R O M F O N T

/ 8 c o l u m n t o p a z f o n t

i i O R b o r d e r l i n e s [ 5 ] [ 2 ] { / s i m p l e b o a r o u n d g a d g e t s ♦ { - 3 , - } { G A D G W I D T H + 3 , - 3 } { G A D G W I D T H 3 G A D G H E I G H T 2 } { - 3 , G A D G H E I G H T 2 } { - 3 , -

/ T h f o l l o w i n g i t h d e f a u l t c o n t e n t s o c l i e n t ' s g a d g e t ♦ s t r u c t t w m G a d g e t g a d g T e m p l a t e

/ ♦ i n t u i t i o n g a d g e t s t r u c t u r e ♦ N U L L ,0 , 0 , G A D G W I D T H , G A D G H E I G H T ,G A D G H C O M P ,R E L V E R I F Y ,B O O L G A D G E T ,N U L L ,N U L L ,N U L L ,0 N U L L ,0 N U L L ,/ ♦ i n t u i t i o n b o r d e r s t r u c t u r e ♦ 0 , 0 ,2 . 0 . J A M 1 ,5 ( S H O R T ♦ J b o r d e r l i n e s ,N U L L ,/ ♦ i n t u i t e x t s t r u c t u r e ♦ /1 . 0 . J A M 1 ,

/ a d d r e s s o n e x t g a d g e t/ l e f t , t o p , w i d t h , h e i g h t/ f l a g s i n v e r t t o h i g h l i g h t/ a c t i v a t i o n f l a g s/ ♦ g a d g e t t y p e/ a d d r e s s o b o r d e r s t r u c t/ S e l e c t R e n d e r/ a d d r e s s o i n t u i t e x t s t r u c t/ m u t u a l e x c l u d e/ S p e c i a l l n f o/ g a d g e t I / u s e r d a t a

/ l e f t e d g e , t o e d g e/ ♦ f r o n t , b a c k p e n s , d r a w m o d e/ n u m b e r o p o i n t s i b o r d e r/ a d d r e s s o c o o r d i n a t e a r r a y/ a d d r e s s o n e x t b o r d e r

0 , 1 ,& t w m F o n t ,N U L L ,N U L L ,/ n a m e o g a d g e t a s s u p p l i e d b c l i e n t ♦

/ ♦ f r o n t , b a c k p e n s , d r a w m o d e/ ♦ l e f t e d g e , t o e d g e/ a d d r e s s o T e x t A t t r s t r u c t/ p o i n t e r t o t e x t/ ♦ a d d r e s s o n e x t I n t u i T e x t

♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦

* ♦ ♦ ♦ ♦

♦ ♦ ♦ ♦ *

/ p o i n t e r t m e s s a g e t h a t r e q u e s t e d t h i s g a d g e t ♦ N U L L

e x t e r n V O I D ♦ O p e n W i n d o w ( ) , ♦ O p e n L i b r a r y Q ;e x t e r n V O I D ♦ C r e a t e P o r t ( ) , ♦ F i n d P o r t Q ;e x t e r n V O I D ♦ G e t M s g ( ) , ♦ A l l o c M e m Q ;

s t r u c t I n t u i t i o n B a s e ♦ I n t u i t i o n B a s e ;s t r u c t t w m G a d g e t ♦ N e w G a d g e t ( ) ;s t r u c t M s g P o r t ♦ m p ; / p u b l i c p o r t ( c a l l e d P O R T N A M E ) ♦ s t r u c t N e w W i n d o w + n w ; / d e s c r i b e s c u r r e n t w i n d o w ♦ s t r u c t W i n d o w ♦ w / p o i n t e r t c u r r e n t w i n d o w ♦ s t r u c t t w m M e s s a g e ♦ T m s g ; / m e s s a g e a r r i v e d a t m ♦ s t r u c t I n t u i M e s s a g e ♦ I m s g ; / m e s s a g e a r r i v e d a I D C M P ♦ s t r u c t t w m G a d g e t ♦ t w m g ; / f i r s t g a d g e t i m l i s t ♦

m a i n ( )

r e g i s t e r i n e x i t f l a g ;r e g i s t e r i n s w a p f l a g ;r e g i s t e r i n t i n y f l a g ;r e g i s t e r U W O R D c l a s s ;U W O R D c o d e ;i n g a d g C o u n t ;

/ q u i t i n p u t l o o p i s e ♦ / u s o t h e r w i n d o w ( t i n y / h u g e ) ♦ / c u r r e n t l y u s i n g t i n y w i n d o w ♦ / I D C M P m e s s a g e c l a s s ♦ / I D C M P m e s s a g e c o d e ♦ / o g a d g e t s i m l i s t ♦

r e g i s t e r s t r u c t t w m G a d g e t ♦ g a d g e t ; / g a d g e t c l i c k e d i h u g e w i n d o w ♦ e x i t f l a g F A L S E ;s w a p f l a g F A L S E ;t i n y f l a g T R U E ; / s t a r t o u w i t h t i n y w i n d o w ♦ g a d g C o u n t = 0 i ( ( I n t u i t i o n B a s e O p e n L i b r a r y ( " i n t u i t i o n . l i b r a r y " , 3 3 L ) ) = N U L L )

C l o s e S t u f f ( E J D P E N J N T U I ) ;i ( F i n d P o r t ( P O R T N A M E ) N U L L ) / i f w a l r e a d y e x i s t , q u i t *

C l o s e S t u f f ( E J \ L R E A D Y J J P ) ;i ( ( m p C r e a t e P o r t ( P O R T N A M E , O L ) ) = N U L L )

C l o s e S t u f f ( E _ O P E N _ P O R T ) ;i ( ( » O p e n W i n d o w ( n w = & w t i n y ) ) = N U L L )

C l o s e S t u f f ( E _ O P E N J V I N D O W ) ;/ e x i t f l a g s e b c l o s e g a d g e t o n t i n y w i n d o w i n c u r r e n t c l i e n t s ♦ w h i l e ( l e x i t f l a g )

/ w a i t i n g f o m e s s a g e a I D C M P o o u o w p o r t ♦ W a i t ( 1 w - > U s e r P o r t - > m p _ S i g B i t 1 1 L m p - > m p _ S i g B i t ) ;

w h i l e ( I m s g G e t M s g ( w - > U s e r P o r t ) ) { / c h e c k I D C M P m e s s a g e s f i r s t ♦ c l a s s l m s g - > C l a s s ;c o d e l m s g - > C o d e ;g a d g e t ( s t r u c t t w m G a d g e t ♦ ) l m s g - > I A d d r e s s ;R e p l y M s g ( l m s g ) ;i ( c l a s s C L O S E W I N D O W )

/ e x i t f r o m t i n y w i n d o w o n l y i f w h a v e n c l i e n t s , e l s e b e e p ♦ i ( t i n y f l a g )

i ( g a d g C o u n t = = 0 )e x i t f l a g T R U E ;

e l s eD i s p l a y B e e p ( w - > W S c r e e n ) ;

/ c l o s e g a d g e t o n h u g e w i n d o w m e a n s s w i t c h b a c k t t i n y ♦ e l s e

s w a p f l a g T R U E ;/ ♦ t h i s m e s s a g e m e a n s g a d g e t p r e s s e d i h u g e w i n d o w ♦ e l s e i ( c l a s s = G A D G E T U P )

i f ( t i n y f l a g )s w a p f l a g T R U E ;

/ r e t u r n c o d e E _ O K * // g e r i o g a d g e t *

g a d g e t - > t g M e s s a g e - > t m A c t i o n E _ O K ;K i l l G a d g e t ( g a d g e t - > t g M e s s a g e , T R U E ) ;g a d g C o u n t — ;s w a p f l a g T R U E ;R e p l y M s g ( g a d g e t - > t g M e s s a g e ) ;

/ s w i t c h t t i n y/ i n f o r m c l i e n t

♦ ♦

/ n o c h e c k m e s s a g e s a o u p u b l i c p o r t ♦ w h i l e ( T m s g G e t M s g ( m p ) )

/ ♦ c l i e n t g o i n g o v a c a t i o n , c r e a t e g a d g e t f o h i ♦ i ( T m s g - > t m A c t i o n = T W M _ A C T I O N _ A D D )

i ( ( g a d g e t N e w G a d g e t f T m s g ) ) = N U L L )T m s g - > t m A c t i o n E _ N O J / I E M ; / s e n d r e g r e t s ♦ R e p l y M s g ( T m s g ) ;

e l s eg a d g C o u n t + + ;

/ i f t h h u g e w i n d o w i u r i g h t n o w , c l o s e a n r e - o p e ns o t h a t w c a b s u r e t h e n e g a d g e t w i l l f i ♦

i f ( ' t i n y f l a g ) {S a v e P o s C l o s e W ( n w , w ) C a l c G a d g P o s ( n w ) ;i f ( ( O p e n W i n d o w ( n w ) ) = N U L L )

T h T r a n s a c t o r 6 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 71: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 71/84

C l o s e S t u f f ( E _ A B A N D O N _ S H I P ) ;

/ c l i e n t g o i n g r i g h t o u o b u s i n e s s , c a n c e l h i g a d g e t * e l s e i ( T m s g - > t m A c t i o n = T W M J V C T O N J D E L E T E )

/ k i l l t h g a d g e t , a n g h o s t i i f h u g e w i n d o w i u * i ( K i l l G a d g e t f T m s g , I t i n y f l a g ) )

T m s g - > t m A c t i o n E _ O K ;g a d g C o u n t — ;

 e l s e

T m s g - > t m A c t i o nR e p l y M s g f T m s g ) ;

/ s o m e m e s s a g e t y p e w d o n ' t k n o w ♦ e l s e

T m s g - > t m A c t i o n = E J V C T I O N J J N K N O W N ;R e p l y M s g ( T m s g ) ;

i f ( s w a p f l a g ) / s w i t c h b e t w e e n h u g e a n d t i n y w i n d o w s * s w a p f l a g F A L S E ;S a v e P o s C l o s e W ( n w , w ) n w t i n y f l a g & w h u g e : & w t i n y ;t i n y f l a g I t i n y f l a g ;/ i w e ' r e g o i n g t o p e n h u g e w i n d o w , r e f o r m a t

g a d g e t s a n r e c a l c u l a t e t h w i n d o w s i z e * i ( I t i n y f l a g )

C a l c G a d g P o s ( n w ) ;i ( ( O p e n W i n d o w ( n w ) ) = N U L L )

C l o s e S t u f f ( E _ A B A N D O N _ S H I P ) ;

l o s e S t u f f ( E _ O K ) ;

C l o s e S t u f f

C l o s e a n d e a l l o c a t e e v e r y t h i n g . I t h e r e a r e a n a c t i v e c l i e n t s , t h a tm e a n s s o m e t h i n g h a s g o n e w r o n g , s w s e n d t h e m a E ^ A B A N D O N . S H I P .T h r e t u r n e r r o r c o d e s s t a r t a 5 0 a d e f i n e d i t w m / h e a d e r . h

f ( e r r o r ) i n e r r o r ;

s t r u c t t w m G a d g e t * g t w m g ;

i f ( w ) C l o s e W i n d o w ( w ) ;i f ( m p ) D e l e t e P o r t ( m p ) ;i ( I n t u i t i o n B a s e ) C l o s e L i b r a r y ( l n t u i t i o n B a s e ) ;w h i l e ( g ! = N U L L )

g - > t g M e s s a g e - > t m A c t i o n E _ A B A N D O N _ S H I P ;R e p l y M s g ( g - > t g M e s s a g e ) ;K i l l G a d g e t ( g - > t g M e s s a g e ) ;

e x i t ( e r r o r ) ;

N e w G a d g e tW h a v e n e c l i e n t t c r e a t e g a d g e t f o r . W l i n k h i t t h N e x t G a d g e t f i e l d o t h l a s t g a d g e t o t h l i s t , s e u t h n e g a d g e ta n r e t u r n i t a d d r e s s .

t w m G a d g e t * N e w G a d g e t ( m s g )t w m M e s s a g e * m s g ;

s t r u c t t w m G a d g e t * g * g p r e v ;c h a r * c l i e n t n a m e ;c h a r c

g p r e v N U L L ;t w m g ;

w h i l e ( g ! = N U L L )g p r e v g

g - > t g M y n e x t ;

i f ( ( g A l l o c M e m ( ( l o n g ) s i z e o f ( s t r u c t t w m G a d g e t ) , O L ) )r e t u r n F A L S E ;

i f ( g p r e v = N U L L )g p r e v - > t g M y n e x t g g p r e v - > t g G a d g e t . N e x t G a d g e t & g - > t g G a d g e t ;

* g a d g T e m p l a t e ;c l i e n t n a m e m s g - > t m N a m e s t r l e n ( m s g - > t m N a m e ) ;w h i l e ( c l i e n t n a m e m s g - > t m N a m e

& ( * ( c l i e n t n a m e - 1 ) ) ! ' : & & ! = ' / ' )

c l i e n t n a m e — ;

N L J L L )

s t r n c p y ( g - > t g N a m e , c l i e n t n a m e , G A D G N A M E S I Z E - 1 ) ;g - > t g G a d g e t . G a d g e t R e n d e r ( A P T R ) & g - > t g B o r d e r ;g - > t g G a d g e t . G a d g e t T e x tg - > t g l T e x t . L e f t E d g eg - > t g l T e x t . l T e x tg - > t g M e s s a g ei f ( t w m g = = N U L L )

t w m g = g r e t u r n g

& g - > t g l T e x t ;( G A D G N A M E S I Z E - s t r l e n ( g - > t g N a m e ) ) « 2 ( U B Y T E * ) g - > t g N a m e ;m s g ;

E J A S K J J N K N O W N ; / u n r e c o g n i z e d c l i e n t * / / K i l l G a d g e t

G e r i o g a d g e t c u r r e n t l y o o u l i s t . I o f J l a g i t r u e , t h g a d g e t i c u r r e n t l y b e i n g d i s p l a y e d , s w e ' l l g h o s t i t . R e t u r n F A L S Ei t h g a d g e t i n o o t h l i s t .

♦ K i l l G a d g e t ( m s g , o f J l a g )s t r u c t t w m M e s s a g e * m s g ; i n o f J l a g ;

r e g i s t e r s t r u c t t w m G a d g e t * g * g p r e v ;i n t f l a g ;

f l a g F A L S E ;g p r e v = N U L L ;

t w m g ;w h i l e ( g ! = N U L L & & ! f l a g )

i ( g - > t g M e s s a g e - > t m M e s s a g e . m n _ R e p l y P o r t = m s g - > t m M e s s a g e , n _ R e p l y P o r t )

f l a g T R U E ;g p r e v = g

g - > t g M y n e x t ;

i f ( f l a g )i ( o f f J l a g )

O f f G a d g e t ( & g - > t g G a d g e t , w O L ) ;R e m o v e G a d g e t ( w , & g - > t g G a d g e t ) ;i ( g p r e v N U L L )

g p r e v - > t g M y n e x t g - > t g M y n e x t ;e l s e

t w m g g - > t g M y n e x t ;F r e e M e m ( g , ( l o n g ) s i z e o f ( s t r u c t t w m G a d g e t ) ) ;

r e t u r n f l a g ;

/ C a l c G a d g P o sP o s i t i o n t h g a d g e t s i t h h u g e w i n d o w , a n s e t h w i n d o ws i z e t o a c c o m m o d a t e t h e m . T h g a d g e t s a r e d i s p l a y e d f o u ra c r o s s , t t h m a x i m u m d e p t h o t h e s c r e e n .

♦ C a l c G a d g P o s ( n w )r e g i s t e r s t r u c t N e w W i n d o w n w

r e g i s t e r i n i , x , y ;r e g i s t e r s t r u c t t w m G a d g e t * g

= 0 G A D G H G U T T E R 2 G A D G V G U T T E R 1 0 t w m g ;

/ c h a i n t h r o u g h g a d g e t l i s t , w r i t i n g i n e l e f t a n t o * w h i l e ( g

g - > t g G a d g e t . L e f t E d g e x g - > t g G a d g e t . T o p E d g e y / i t h i s g a d g e t i i R . H . c o l u m n , r e p o s i t i o n t l e f t o n e x t l i n e ♦ /i f ( ( i + + & 3 ) = = 3 ) {G A D G H G U T T E R 2

G A D G H E I G H T G A D G V G U T T E R ; ,e l s e

+ G A D G W I D T H G A D G H G U T T E R ;/ c h a i n t n e x t g a d g e t *

g - > t g M y n e x t ;/ i f t h e r e a r n g a d g e t s , m a k e t h w i n d o w b i e n o u g h t h o l d * i f ( i = = 0 )G A D G H G U T T E R G A D G W I D T H 2 / i f l e s s t h a n g a d g e t s , m a k e w i n d o w j u s t b i e n o u g h t h o l d t h e m *

/ g a d g e t c o u n t e r/ s t a r t i n g p o s i t i o n/ s t a r t i n g p o s i t i o n

♦ ♦

/ a d d r e s s o s g a d g e t *

( n w - > W i d t h x

e l s e / o t h e r w i s e m a k e i f u l l w i d t h ♦ n w - > W i d t h G A D G H G U T T E R ( G A D G H G U T T E R G A D G W I D T H ) 4 / i f t h l a s t g a d g e t o t h l i s t f a l l s a t h R . H . e d g e o

t h w i n d o w , i a l r e a d y b i e n o u g h ; o t h e r w i s e , m a k e i t s ♦ i f ( ( i & 3 ) = = 0 )

n w - > H e i g h t y

h T r a n s a c t o r 6 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 72: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 72/84

n w - > H e i g h t G A D G V G U T T E R + G A D G H E I G H T ;/ m a k e s u r e t h a t n e d i m e n s i o n s o w i n d o w w i l l s t i l l f i t

o t h s c r e e n . . . i n e c e s s a r y r e p o s i t i o n t h w i n d o w * i f ( n w - > L e f t E d g e n w - > W i d t h w - > W S c r e e n - > W i d t h )

n w - > L e f t E d g e w - > W S c r e e n - > W i d t h n w - > W i d t h ;i f ( n w - > T o p E d g e n w - > H e i g h t w - > W S c r e e n - > H e i g h t )

n w - > T o p E d g e w - > W S c r e e n - > H e i g h t - n w - > H e i g h t ;/ i n s t a l l o u f i r s t g a d g e t a t h n e w i n d o w ' s f i r s t g a d g e t * n w - > F i r s t G a d g e t & t w m g - > t g G a d g e t ;

/ S a v e P o s C l o s e WS a v e t h e c u r r e n t w i n d o w p o s i t i o n a n s i z e i t h N e w W i n d o ws t r u c t u r e f o t h a t w i n d o w , t h e n c l o s e t h e w i n d o w .

*

S a v e P o s C l o s e W ( n w , w r e g i s t e r s t r u c t N e w W i n d o w ♦ n w ;r e g i s t e r s t r u c t W i n d o w * w

n w - > L e f t E d g e w - > L e f t E d g e ;n w - > T o p E d g e = w - > T o p E d g e ;n w - > W i d t h w - > W i d t h ;n w - > H e i g h t w - > H e i g h t ;C l o s e W i n d o w ( w ) ;

/ W h e n c o m p i l i n g w i t h A z t e c , t h f o l l o w i n g t w s t u b s r e p l a c e t h e A z t e cc o d e f o p a r s i n g t h e c o m m a n d l i n e , t h u s r e d u c i n g c o d e s i z e b i •

# i f d e f A Z T E C _ C_ w b _ p a r s e ( ) { }_ c l L p a r s e ( ) { }# e n d i f ! A Z T E C _ C

L I S T I N G 2 H E A D E R / T W M . H/ h e a d e r / t w m . h

T h i s i t h s a m e h e a d e r f i l e f o b o t h t w m . c a n d t w r n C l i e n t c .H o w e v e r , t h i n t u i t i o n i n c l u d e i n o n e e d e d f o t w m C l i e n t ,a n c a n b e o m i t t e d t r e d u c e c o m p i l a t i o n t i m e .

# i n c l u d e < i n t u i t i o n / i n t u i t i o n b a s e . h ># i n c l u d e < e x e c / t y p e s . h >i n c l u d e < e x e c / m e m o r y . h ># i n c l u d e < e x e c / p o r t s . h ># i n c l u d e < e x e c / l i s t s . h >

# d e f i n e P O R T N A M E ( " T i n y W i n d o w M a n a g e r " )# d e f i n e G A D G N A M E S I Z E 1 # d e f i n e G A D G H G U T T E R 1 # d e f i n e G A D G V G U T T E R 1 # d e f i n e G A D G W I D T H ( G A D G N A M E S I Z E 3 # d e f i n e G A D G H E I G H T 1 / c o m m a n d s p a s s e d i t w m _ a c t i o n f i e l d o t w m M e s s a g e ♦ # d e f i n e T W J \ C T I O N _ A D D# d e f i n e T W M j \ C T I O N _ D E L E T E/ r e t u r n c o d e s p a s s e d b a c k i s a m e f i e l d * /# d f i E O # d e f i n e E J D K# d e f i n e E _ O P E N J N T U I# d e f i n e E J \ L R E A D Y J J P# d e f i n e E _ O P E N _ P O R T# d e f i n e E _ O P E N _ W I N D O W# d e f i n e E J \ C T I O N _ U N K N O W N# d e f i n e J A S K J J N K N O W N# d e f i n e E J M 0 J V 1 E M# d e f i n e E J \ B A N D O N _ S H I Ps t r u c t t w m M e s s a g e

s t r u c t M e s s a g e t m M e s s a g e ; / c h a r * t m N a m e ; / i n t t m A c t i o n ; /

5 0 5 0 5 0 5 0 5 0 5 0 5 0 5 0

E x e c m e s s a g e s t r u c t u r e ♦ t h c l i e n t ' s g a d g e t n a m e * /a d o d e l e t e g a d g e t *

s t r u c t t w m G a d g e t {s t r u c t G a d g e t t g G a d g e t ; / t h g a d g e t f o c l i e n t ♦ s t r u c t B o r d e r t g B o r d e r ; / b o a r o u n d g a d g e t * s t r u c t I n t u i T e x t t g l T e x t ; / t e x t i g a d g e t ♦ c h a r t g N a m e [ G A D G N A M E S I Z E ] ; / ♦ s t r i n g f o I n t u i t e x t ♦ /s t r u c t t w m M e s s a g e ♦ t g M e s s a g e ; / m s t o r e p l y o c l i c k ♦ s t r u c t t w m G a d g e t ♦ t g M y n e x t ; / m l i n k t n e x t g a d g e t ♦

L I S T I N G 3 T E S T 1 . C/ ♦ t e s t i . c

T h i s i t e s t p r o g r a m f o T W M , a n p r o v i d e s a e x a m p l e o u s i n g t w m C l i e n ti a a p p l i c a t i o n . I p u t s u w i n d o w n a m e d " P r e s s a n k e y ' ; i f k e i p r e s s e d , t h e w i n d o w i t a k e n d o w n , a n i r e p l a c e d b e i t h e r t i n y w i n d o wo b y a g a d g e t i T W M ' s w i n d o w ( i P o s t M e Q r e t u r n s T R U E ) . C l i c k i n g i t h m a i n p a r t o t h t i n y w i n d o w k i l l s i t a n b r i n g s t h b i w i n d o w b a c k .T h s a m e a p p l i e s t t h g a d g e t i t h T W w i n d o w , i f i t i b e i n g u s e di n s t e a d : c l i c k i n g o i k i l l s i a n b r i n g u t h i s p r o g r a m ' s b i w i n d o w .C l i c k i n g c l o s e i e i t h e r t h b i g o r t h s m a l l w i n d o w e x i t s t h p r o g r a m .

T h c o m p i l e d t e s t i p r o g r a m m a b c o p i e d t t e s t 2 , t e s t 3 e t c , a n a l c o p i e s r u n s i m u l t a n e o u s l y , t g e b e t t e r i d e a o h o T W w o r k s .

U n d e r A z t e c , p u t h i s p r o g r a m a n t w m C l i e n t c i t h c u r r e n t d i r e c t o r y ,a n d t w m . h i t h e s u b d i r e c t o r y " h e a d e r " , t h e n c o m p i l e a n l i n k t h u s :

c H t w m . p h e a d e r / t w m . hc c + l t w m . p t e s t ic c + l t w m . p t w m C l i e n tI t e s t i . o t w m C l i e n t . o - l c

# i n c l u d e ' h e a d e r / t w m . h "# d e f i n e H U G E J V I N D O W J M A M E ( ( U B Y T E ♦ ( " P r e s s a n k e y " )

s t r u c t N e w W i n d o w w t i n y2 8 0 , 1 2 0 , 1 2 0 , 2 0 ,

0 1 M O U S E B U T T O N S

C L O S E W I N D O W ,W I N D O W D R A GW I N D O W C L O S E

W I N D O W D E P T HS M A R T _ R E F R E S HA C T I V A T E ,

N U L L ,N U L L ,N U L L ,N U L L ,N U L L ,0 , 0 , 0 , 0 ,W B E N C H S C R E E N

s t r u c t N e w W i n d o w w h u g e2 8 0 , 1 2 0 , 3 6 0 , 6 0 ,

0 1 C L O S E W I N D O W

R A W K E Y ,W I N D O W D R A G

W I N D O W C L O S EW I N D O W D E P T HS M A R T _ R E F R E S HA C T I V A T E ,

N U L L ,N U L L ,H U G E J V I N D O W _ N A M E ,N U L L ,N U L L ,0 , 0 , 0 0 W B E N C H S C R E E N

/ l e f t , t o p , w i d t h , h e i g h t ♦ / d e t a i l p e n , b l o c k p e ♦ / ♦ I D C M P f l a g s ♦

/ W i n d o w f l a g s ♦

/ a p p l i c a t i o n g a d g e t l i s t ♦ / s p e c i a l c h e c k m a r k i m a g e r y ♦ / ♦ w i n d o w t i t l e ♦ / c u s t o m s c r e e n p o i n t e r ♦ / s u p e r b i t m a p p o i n t e r ♦ / m i n / m a x w i d t h a n h e i g h t ♦ / s c r e e n t y p e ♦

/ l e f t , t o p , w i d t h , h e i g h t ♦ / ♦ d e t a i l p e n , b l o c k p e ♦ / ♦ I D C M P f l a g s *

/ W i n d o w f l a g s ♦

/ ♦ a p p l i c a t i o n g a d g e t l i s t ♦ / s p e c i a l c h e c k m a r k i m a g e r y ♦ / w i n d o w t i t l e ♦ / c u s t o m s c r e e n p o i n t e r ♦ / s u p e r b i t m a p p o i n t e r ♦ / m i n / m a x w i d t h a n h e i g h t ♦ / s c r e e n t y p e ♦

T h T r a n s a c t o r

e x t e r n V O I D ♦ O p e n W i n d o w Q , ♦ O p e n L i b r a r y f ) , ♦ A l l o c M e m Q , ♦ G e t M s g Q ;s t r u c t I n t u i t i o n B a s e ♦ I n t u i t i o n B a s e N U L L ;s t r u c t N e w W i n d o w ♦ n w = N U L L ;s t r u c t W i n d o w ♦ w N U L L ;s t r u c t l n t u i M e s s a g e * l m s g N U L L ;m a i n ( a r g c , a r g v )i n a r g c ; c h a r * * a r g v ;

i n e x i t f l a g ; / ♦ t r u e w h e n c l o s e g a d g e t h a b e e n p r e s s e d ♦ i n s w a p f l a g ; / t r u e w h e n i t ' s t i m e t s w i t c h b e t w e e n w i n d o w s ♦ i n t i n y f l a g ; / ♦ t r u e w h e n t h t i n y w i n d o w i u * U W O R D c l a s s ; / I D C M P m e s s a g e c l a s s ♦ U W O R D c o d e ; / I D C M P m e s s a g e c o d e * c h a r f i l e n a m e [ 3 1 ] ;r e g i s t e r i n i , c

/ U s p r o g r a m n a m e a t i t l e o t i n y w i n d o w * f o ( s t r l e n ( a r g v [ O ] ) - 1

& ( a r g v [ 0 ] [ i - ] ) ! = ' : ' & & ! ' / ' ; i — w t i n y . T i t l e ( U B Y t e * ) ( & a r g v [ 0 ] [ i ] ) ;i f ( ( I n t u i t i o n B a s e O p e n L i b r a r y ( " i n t u i t i o n . l i b r a r y \ 3 3 U ) = N U L L )C l o s e S t u f f ( E _ O P E N J N T U I ) ;/ L e t w m C l i e n t d i t a l l o c a t i o n s . . . w d o n ' t c a r e t h i s

7 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 73: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 73/84

t i m e , b u i r e t u r n s F A L S E i f t h a l l o c a t i o n s f a i l ♦ t w m l n i t ( ) ;/ i n i t i a l i z e f l a g s * t i n y f l a g s w a p f l a g e x i t f l a g F A L S E ;/ o p e n t h b i w i n d o w , a n s a v e p o i n t e r t i t N e w W i n d o w s t r u c t * i ( ( O p e n W i n d o w ( n w & w h u g e ) ) = N U L L )

C l o s e S t u f f ( E _ O P E N J V I N D O W ) ;w h i l e ( l e x i t f l a g ) { / I D C M P l o o p *

W a i t ( 1 w - > U s e r P o r t - > m p _ S i g B i t ) ;w h i l e ( I m s g G e t M s g ( w - > U s e r P o r t ) )

c l a s s l m s g - > C l a s s ;c o d e = l m s g - > C o d e ;R e p l y M s g ( l m s g ) ;i ( c l a s s C L O S E W I N D O W )e x i t f l a g T R U E ;/ s w a p i f t i n y w i n d o w c l i c k e d , o k e p r e s s e d i b i w i n d o w * e l s e i f ( ( c l a s s = = M O U S E B U T T O N S & c o d e = S E L E C T U P & & t i n y f l a g )

| | c l a s s = = R A W K E Y )s w a p f l a g T R U E ;

i ( s w a p f l a g )s w a p f l a g F A L S E ;/ r e m e m b e r w h e r e t h i s w i n d o w i n o s t a t i o n e d , a n c l o s e i * S a y e P o s C l o s e W ( n w , w ) / i f t i n y w i n d o w i n o u p o P o s t M e Q f a i l s , o p e n o t h e r w i n d o w ♦ i ( t i n y f l a g | ! P o s t M e ( w t i n y . T i t l e ) )

n t i n y f l a g & w h u g e : & w t i n y ;t i n y f l a g I t i n y f l a g ;

i f ( ( O p e n W i n d o w ( n w ) ) = N U L L )C l o s e S t u f f ( E J D P E N J / V I N D O W ) ;

C l o s e S t u f f ( E _ O K ) ;

C l o s e S t u f f

C a l l t w m C l e a n U p O t d e a l l o c a t e m e s s a g e s a n p o r t w e ' v e b e e n u s i n g ,t h e n c l o s e o u r o w s t u f f a n e x i t .

f f ( e r r o r )e r r o r ; / e r r o r s s t a r t a 5 0 ( s e e t w m . h ) e x c e p t f o E _ O K ♦

t w m C l e a n U p Q ; / t w m C l i e n t d e a l l o c a t i o n s * i f ( w ) C l o s e W i n d o w ( w ) ;i f ( I n t u i t i o n B a s e ) C l o s e L i b r a r y ( l n t u i t i o n B a s e ) ;e x i t ( e r r o r ) ;

S a v e P o s C l o s e W

S a v e t h e c u r r e n t w i n d o w p o s i t i o n a n s i z e i t h N e w W i n d o w s t r u c t u r e f o t h a t w i n d o w , t h e n c l o s e t h e w i n d o w .

S a v e P o s C l o s e W ( n w , w s t r u c t N e w W i n d o w n w s t r u c t W i n d o w * w

n w - > L e f t E d g e = w - > L e f t E d g e ;n w - > T o p E d g e w - > T o p E d g e ;n w - > W i d t h w - > W i d t h ;n w - > H e i g h t w - > H e i g h t ;C l o s e W i n d o w ( w ) ;

4 t w m C l i e n t . c

t w m C l i e n t c

T i n y - W i n d o w M a n a g e r v 1 . 0C l i e n t I n t e r f a c e M o d u l eb N i c k S u l l i v a n

( c 1 9 8 7 T r a n s a c t o r P u b l i s h i n g I n c .

T h i s p r o g r a m i f r e e l y r e d i s t r i b u t a b l e p r o v i d e d t h a t n o c h a r g e i m a d ef o t h . e r e d i s t r i b u t i o n b e y o n d r e a s o n a b l e r e p r o d u c t i o n c o s t s , a n t h a t n c h a n g e s a r m a d e , e x c e p t w i t h t h p r i o r w r i t t e n a p p r o v a l o T r a n s a c t o rP u b l i s h i n g I n c . , 8 W e s t W i l m p t S t . # 1 0 , R i c h m o n d H i l l , O n t a r i o L 4 B 1 K 7 .P r o g r a m s t h a t i n c o r p o r a t e t h i s c o d e s h o u l d i n c l u d e i t h e i r d o c u m e n t a t i o nt h l i n e : " T h i s p r o g r a m s u p p o r t s T W ( ( c ) 1 9 8 7 T r a n s a c t o r P u b l i s h i n g I n c . ) '

T h i s m o d u l e s h o u l d b c o m p i l e d a n l i n k e d w i t h a p p l i c a t i o n s t h a t w i s ht b c l i e n t s o f T W w h e n i t i p r e s e n t i t h e s y s t e m . B r i e f l y , t h c l i e n tc a l l s t h f u n c t i o n t w m l n i t Q t o s e t u p a f t e r w a r d s c a l l s P o s t M e ( ) w h e n e v e rh w i s h e s t g t o s l e e p , t h e n f i n a l l y c a l l s t w m C l e a n U p Q j u s t b e f o r ee x i t i n g . F u l l d e t a i l s . a r e i t h p r e f a t o r y c o m m e n t s t T W M . c . N o t e t h a t

t h s i z e o t h i s m o d u l e c a b f u r t h e r r e d u c e d , e s p e c i a l l y i p r o g r a m st h a t d n o t r e q u i r e U n P o s t M e ( ) ; f o d e t a i l s s e c o m m e n t s i t h c o d e .

i n c l u d e " h e a d e r / t w m . h "# d e f i n e T W M J / I S G S I Z E ( ( l o n g ) s i z e o f ( s t r u c t t w m M e s s a g e ) )e x t e r n V O I D * C r e a t e P o r t ( ) , * F i n d P o r t ( ) ;e x t e r n V O I D * G e t M s g ( ) , * A l l o c M e m ( ) ;s t r u c t M s g P o r t * m N U L L ; / r e p l y p o r t f o o u m s g s * s t r u c t M s g P o r t * t w m p o r t = N U L L ; / ♦ p o i n t s t t w m ' s p o r t * s t r u c t t w m M e s s a g e A d d m s g N U L L ; / * T W M J \ C T I O N _ A D D m e s s a g e * / T h f o l l o w i n g l i n e c a b d e l e t e d i f U n P o s t M e Q i n o r e q u i r e d . * s t r u c t t w m M e s s a g e * D e l m s g = N U L L ; / ♦ T W J \ C T I O N _ D E L E T E m e s s a g e ♦ i n t w m R e a d y F A L S E - / T R U E m e a n s p o r t s a r a l l o c a t e d i n i t i a l i z e d * /P o s t M e ( c l i e n t N a m e )r e g i s t e r c h a r * c l i e n t N a m e ;

/ t r y i n g n o t p a s s j u n k t T W M . . . t h i s i f - s t a t e m e n t c a b d e l e t e d a f t e r t h c l i e n t a p p l i c a t i o n h a b e e n d e b u g g e d . *

i ( c l i e n t N a m e = N U L L | | * c l i e n t N a m e = ' \ 0 ' )r e t u r n F A L S E ;

/ c h e c k w e ' r e i n i t i a l i z e d a n t h a t T W e x i s t s i s y s t e m . . .t h f i r s t c o n d i t i o n i t h i f - s t a t e m e n t c a n b e r e m o v e da f t e r t h c l i e n t a p p l i c a t i o n h a b e e n d e b u g g e d *

i f ( I t w m R e a d y | | ( t w m p o r t F i n d P o r t ( P O R T N A M E ) ) = N U L L )r e t u r n F A L S E ;

/ s e u o u m e s s a g e t e l l i n g T W t a d i t g a d g e t * A d d m s g - > t m N a m e c l i e n t N a m e ;A d d m s g - > t m A c t i o n = T W M _ A C T I O N _ A D D ;P u t M s g ( t w m p o r t , A d d m s g ) ;/ T h r e m a i n d e r o t h i s f u n c t i o n w o u l d n e e d t b m o d i f i e d i

t h c l i e n t w a n t s t b a b l e t r e - a w a k e n o s o m e s t i m u l u so t h e r t h a n t h u s e r c l i c k i n g i t g a d g e t i T W M ' s w i n d o w . *

W a i t P o r t ( m p ) ;A d d m s g G e t M s g ( m p ) ;/ a n y t h i n g o t h e r t h a n E _ O K r e t u r n c o d e i b a n e w s . . . f o r g e t a b o u t T W * r e t u r n ( A d d m s g - > t m A c t i o n = E _ O K ) ;

/ T h f o l l o w i n g f u n c t i o n c a b d e l e t e d i n o r m a l u s * U n P o s t M e ( )

i f ( t w m R e a d y & ( t w m p o r t F i n d P o r t ( P O R T N A M E ) ) ! N U L L )D e l m s g - > t m A c t i o n T W J \ C T I O N _ D E L E T E ;P u t M s g ( t w m p o r t , D e l m s g ) ;/ T W w i l l r e p l y t h o r i g i n a l ( A D D ) m e s s a g e b e f o r e r e p l y i n g t h i s o n

i f i t ' s g o i n g t r e p l y i a a l l . . . h e n c e l o o p e x i t c o n d i t i o n * d o

W a i t P o r t ( m p ) ;w h i l e ( G e t M s g ( m p ) ! D e l m s g ) ;

/ T h i s f u n c t i o n m u s t b c a l l e d b t h c l i e n t b e f o r e c a l l i n g P o s t M e Q * t w m l n i t ( )

i f ( t w m R e a d y ) / d o n ' t r e - i n i t i a l i z e * /r e t u r n T R U E ;

/ s e u o u m e s s a g e s , a l l o c a t e p o r t . T h a l l o c a t i o n o f D e l m s gc a b d e l e t e d i t h U n P o s t M e Q f u n c t i o n i n o t r e q u i r e d *

i f ( ( m p C r e a t e P o r t ( N U L L , 0 L ) ) N U L L| | ( D e l m s g A l l o c M e m ( T W M . M S G S I Z E , M E M F _ C L E A R ) ) = N U L L| | ( A d d m s g = A l l o c M e m ( T W M J v 1 S G S I Z E , M E M F . C L E A R ) ) = N U L L

) t w m C l e a n U p O ;r e t u r n F A L S E ;

e l s e {/ t h e n e x t t w l i n e s c a b d e l e t e d i U n P o s t M e Q i n o r e q u i r e d . ♦ D e l m s g - > t m M e s s a g e . m n _ R e p l y P o r t m p D e l m s g - > t m M e s s a g e . m n J M o d e . l n J y p e N T . M E S S A G E ;A d d m s g - > t m M e s s a g e . m n _ R e p l y P o r t m p A d d m s g - > t m M e s s a g e . m n _ N o d e . l n J y p e = N T J v i E S S A G E ;r e t u r n ( t w m R e a d y T R U E ) ;

/ T h i s f u n c t i o n m u s t b c a l l e d b t h c l i e n t b e f o r e i e x i t s . ♦ /t w m C l e a n U p O

t w m R e a d y F A L S E ;i f ( m p ) D e l e t e P o r t ( m p ) ;i ( A d d m s g ) F r e e M e m ( A d d m s g , T W M _ M S G S I Z E ) ;/ t h e n e x t l i n e c a n b e d e l e t e d i f U n P o s t M e Q i n o t r e q u i r e d . ♦ i ( D e l m s g ) F r e e M e m ( D e l m s g , T W M J V I S G S I Z E ) ;

T h e T r < s a c t o r 7 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 74: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 74/84

T h V i e w P o r t ■ B L a r r y P h i l l i p sL a r r y P h i l l i p s i a A m i g a h a r d w a r e a n s o f t w a r e h a c k e r f r o mV a n c o u v e r , B r i t i s h C o l u m b i a , a n S Y S O P o C o m p u S e r v e ' s

A m i g a F o r u m . T h i s i t h f i r s t i n s t a l m e n t o r e g u l a r c o l u m n i w h i c h L a r r y t a l k s a b o u t . . w e l l , w h a t e v e r i o h i m i n d . Y o m a n o a l w a y s a g r e e w i t h h i o p i n i o n s , b u w h o p e y o u ' l l e n j o y h i d i s c u s s i o n s o w i d e v a r i e t y o m o s t l y A m i g a - r e l a t e d t o p i c s .

D y o r e m e m b e r w h e n t h e p e r s o n a l c o m p u t e r c a m e o n t o t h s c e n e ? W h e n t h f i r s t h o m e c o l o u r m a c h i n e s b e c a m e a v a i l a b l e ? T h f i r s t h a r d d i s k d r i v e s ? H o a b o u t s o f t w a r e ? D e s k t o p p u b l i s h i n g ? A l o t h e s e a d v a n c e m e n t s i t h c a p a b i l i t i e s o f t h h o m e c o m p u t e rh a v e b e e n w e l c o m e d b e n t h u s i a s t s . F o m o n t h s o y e a r s , t h eb u z z w o r d s f l e w , r e f i n e m e n t s w e r e a n t i c i p a t e d , p e o p l e w o n d e r e dw h e n t h e i r o w m a c h i n e w o u l d b e c a p a b l e o s u c h m a r v e l s .

T h e r e i n e w a v e o b u z z w o r d s n o w , a n y o w i l l b h e a r i n gt h e m m o r e a n d m o r e i t h n e x t f e y e a r s . T h b u z z w o r d s h a v e t d w i t h " m u l t i t a s k i n g " . T h r e a s o n y o w i l l h e a r m o r e a b o u t t h i s i t w o f o l d . T h f i r s t i t h a t m a c h i n e s a r b e c o m i n g p o w e r f u l e n o u g h ,a n f a s t e n o u g h , t m a k e i w o r t h w h i l e . T h s e c o n d r e a s o n i t h a tt h b i p l a y e r s i t h g a m e w i l l b i n t r o d u c i n g m u l t i t a s k i n g m c h i n e s , a n o c o u r s e w i l l , a u s u a l , c l a i m n o t o n l y t h a t t h e yi n v e n t e d t h e t e c h n i q u e , b u t h a t t h e i r p a r t i c u l a r i m p l e m e n t a t i o n i t h b e s t . W a l k n o w w h t h e s e c o m p a n i e s a r e , a n i f a c t t h e yh a v e a l r e a d y s t a r t e d t h w h e e l s i m o t i o n . I B h a a n n o u n c e d t h P S / 2 l i n e , a n A p p l e h a a n n o u n c e d t h e i r M a I I O c o u r s e t h o p e r a t i n g s y s t e m f o t h P S / 2 l i n e i s t i l l v a p o u r , a n t h M a d o e s n ' t h a v e t h M M y e t , b u t h e y a r c o m i n g .

a c o n f i d e n t t h a t I B w i l l p r e t e n d t h e y i n v e n t e d m u l t i t a s k i n g , j u s ta t h e y d i w i t h " V i r t u a l S t o r a g e " o t h e i r m a i n f r a m e s . T h e y m a n o c o m e r i g h t o u a n s a s o b u t t h e p e o p l e w h b u c o m p u t e r sf r o m t h e m w i l l l o o k a r o u n d a f t e r t h f a c t a n s a y , " L o o k a a l t h o s eo t h e r c o m p u t e r c o m p a n i e s i m i t a t i n g I B M . A r e n ' t w g r e a t f o b u y i n g o u m a c h i n e s f r o m t h c o m p a n y t h a t p a v e d t h w a y ? "

A p p l e h a a l r e a d y g o n e e v e n f a r t h e r . s i g n o t h e i r b o o t h a t r a d es h o w r e c e n t l y p r o c l a i m e d t h M a I t b " T h e f i r s t i n e g e n e r a t i o n o m u l t i t a s k i n g h o m e c o m p u t e r s " . A s a n M a I o w n e ra n h w i l l t e l l y o t h a t t h M a I h a m u l t i t a s k i n g c a p a b i l i t y . W h a th w o n ' t t e l l y o i h i s d e f i n i t i o n o t h b u z z w o r d s . W i t h t h e c u r r e n ts o f t w a r e o t h M a I I o n c a i n d e e d m u l t i t a s k , b u o n l y i t h p r o g r a m t h a t i c u r r e n t l y r u n n i n g s p e c i f i c a l l y r e l i n q u i s h e s c o n t r o lt t h s u p e r v i s o r y s c h e d u l i n g p r o g r a m , o i t h u s e r m a n u a l l yc a u s e s c o n t e x t s w i t c h t a n o t h e r , w a i t i n g a p p l i c a t i o n .

L e t ' s t a k e l o o k a m a c h i n e t h a t r e a l l y d o e s m u l t i t a s k , o n t h a th a b e e n d o i n g s f o t w y e a r s n o w . O f c o u r s e a r e f e r r i n g t t h A m i g a . T h A m i g a i n o t h f i r s t m u l t i t a s k i n g h o m e c o m p u t e r , b u i d o e s h a v e o n d i s t i n c t i o n f r o m p r e v i o u s m u l t i t a s k i n g s y s t e m s s u c ha t h C o C o w i t h t h O S / 9 o p e r a t i n g s y s t e m . T h a t d i s t i n c t i o n i a l i m p o r t a n t , a n i t h f a c t t h a t p r o g r a m s n e e d n o b s p e c i a l l yw r i t t e n t u s m u l t i t a s k i n g . T h i s m e a n s t h a t p r o g r a m , u n l e s sw r i t t e n t o i n h i b i t m u l t i t a s k i n g , w i l l g e a l o n g f i n e w i t h o t h e r p r og r a m s r u n n i n g c o n c u r r e n t l y .

h a v e h e a r d m u l t i t a s k i n g r e f e r r e d t a " g i m m i c k " , a " u s e l e s s " ,a n w o r s e . h a v e h e a r d s t a t e m e n t s t t h e f f e c t t h a t " c a o n l y d o n t h i n g a t i m e a n y w a y " , o " w o u l d n e v e r u s e i t " . O n o t h n i c e s t t h i n g s c a s a a b o u t m u l t i t a s k i n g i t h a t h a r d l y e v e r n o t i c ei a n m o r e . d o n ' t t h i n k o i a " f e a t u r e " m u l t i t a s k i n g h a b e c o m e a o r d i n a r y , e v e r y d a y a c t i v i t y f o r m e a n o n l y a p p r e c i a t ei p r o p e r l y w h e n a f a c e d w i t h t h u n p l e a s a n t p r o s p e c t o u s i n gs i n g l e - t a s k i n g m a c h i n e .

W i t h m u l t i t a s k i n g , y o n e e d n o s i t ^ a n d w a i t w h i l e c o m p i l e o d o w n l o a d i h a p p e n i n g , o w o r r y a b o u t w h e t h e r y o l o a d e d u t h a tf a v o u r i t e " r e s i d e n t u t i l i t y " . Y o u r f a v o u r i t e r e s i d e n t u t i l i t i e s a r t h e r e .A l t h e t i m e . A l l o f t h e m . E v e n y o u r n o t - s o - f a v o u r i t e o n e s a r t h e r e , r e a d y t b c a l l e d u p o n . N e e d t l o o k u n a m e a n a d d r e s s ?U o h . . . t h c o m p i l e r i r u n n i n g ! N p r o b l e m , j u s t p u s h t h c o m p i l e r w i n d o w i n t o t h b a c k g r o u n d a n d d i r e c t o r y , l o a d u a e d i t o r , p h o n e b o o k , a n a d d r e s s b o o k , o i f a c t a n y t h i n g y o w a n t . T h o n l y l i m i t a t i o n i t h a m o u n t o m e m o r y y o h a v e .

B u t w o n ' t e v e r y t h i n g r u s l o w e r ?

I ' v e r y g l a d y o a s k e d t h a t q u e s t i o n , b e c a u s e i i o n t h a t c a b a n s w e r e d w i t h a e x a m p l e . Y o d o n ' t g e a n y t h i n g f o n o t h i n g .T h e r e ' s n s u c h t h i n g a s f r e e l u n c h . W a l k n o w t h a t , s o w h e r e ' st h e c a t c h ? T h a n s w e r i t h a t t h e r e i n c a t c h . Y o d g e s o m e t h i n g f o n o t h i n g . W h a t y o g e i b e t t e r u t i l i z a t i o n o t h a v a i l a b l e m a c h i n e c y c l e s . Y o g e t u s t h r e s o u r c e s y o p a i d f o w h e n y o b o u g h t y o u r m a c h i n e . C o n s i d e r t h e f o l l o w i n g r e a s o n a b l yt y p i c a l s c e n a r i o . W w i l l l o o k a i o t w d i f f e r e n t m a c h i n e s , o n b e i n g t h A m i g a , a n d a n o t h e r b e i n g a m y t h i c a l s i n g l e - t a s k i n gm a c h i n e t h a t j u s t h a p p e n s t r u t h s a m e p r o g r a m s a n a t h s a m e s p e e d .

F i r s t t h s i n g l e - t a s k e r . W w i l l c o n s i d e r t h r e e p r o g r a m s : a t e r m i n a lp r o g r a m , a e d i t o r , a n " C P U b o u n d " p r o g r a m , s a y s o m e t h i n gl i k e M a n d e l b r o t p i c t u r e g e n e r a t o r . W i t h t h e t e r m i n a l p r o g r a m w a r g o i n g t d o w n l o a d f i l e t h a t w i l l t a k e a b o u t a h o u r a 3 0 b a u d . W i t h t h e d i t o r w a r g o i n g t w r i t e t h a l t i m e b e s t n o v e l /c o m p u t e r g a m e / w h a t e v e r , a n w i l l s p e n d a n h o u r e d i t i n g . T h M a n d e l b r o t g e n e r a t o r w i l l d t h p i c t u r e w w a n t i a h o u r ( y o ua r p a p e r i n g y o u r c o m p u t e r r o o m w a l l s w i t h ' b r o t s a r e n ' t y o u ? ) .T h f a c t t h a t t h e t i m e s a r a l o n h o u r i a i n c r e d i b l e c o i n c i d e n c e ,b u w i l l s e r v e o u p u r p o s e s .

O t h e s i n g l e - t a s k i n g m a c h i n e , w l o a d u o u t e r m i n a l p r o g r a m ,c a l l t h n e t w o r k o B B S , s t a r t t h d o w n l o a d , a n g h a v e l u n c h .W h e n i i d o n e , w c a c a l l u t h e d i t o r a n d s p e n d a h o u rw r i t i n g . F i n a l l y , w s t a r t t h M a n d e l b r o t g e n e r a t o r a n w a i t a g a i n .T o t a l t i m e f o t h e s e a c t i v i t i e s i t h r e e h o u r s , n o t c o u n t i n g a n t i m ew s p e n t s e t t i n g u e a c h p r o g r a m . T h r e e h o u r s , i w h i c h w s p e n te x a c t l y o n e h o u r i n t e r a c t i n g w i t h t h c o m p u t e r , a n d t w o h o u r sw a i t i n g f o i t f i n i s h .

O t h A m i g a , t h i n g s a r e f a b e t t e r . F i r s t , w s t a r t t h M a n d e l b r o tg e n e r a t o r , s e t t i n g i t p r i o r i t y o - 2 D o n ' t w o r r y t o m u c h i " - 2 " d o e s n ' t m e a n m u c h t y o y e t . I t ' s m a g i cn u m b e r t h a t t e l l s t h A m i g a s o m e t h i n g a b o u t y o u r w i s h e s .

7 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e 0

Page 75: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 75/84

l i t t l e m o r e o i l a t e r . N o w , t h g o o d p a r t s t a r t s . R i g h t a w a y , t h r e a c t i o n o n e w A m i g a o w n e r i t s i a n w a i t f o i t f i n i s h .

o s f o t h v e t e r a n ! T h v e t e r a n i m m e d i a t e l y s t a r t s u t h p r o g r a m , s e t t i n g i t p r i o r i t y o f ( a n o t h e r m a g i c

t h A m i g a i f u l l o t h e m ) . T h B B o n e t w o r k i c a l l e d ,n t h d o w n l o a d s t a r t e d . P u s h i n g t h e t e r m i n a l p r o g r a m b a c k o u

t h w a y , w f i n a l l y c a l l t h e d i t o r , a t p r i o r i t y o - 1 a n s t a r t o p r o g r a m o r m a n u s c r i p t .

n o y o V p r o b a b l y g u e s s e d t h a t t h A m i g a i g o i n g t b e b u s yr l e s s t h a n t h t h r e e h o u r s r e q u i r e d b t h e o t h e r m a c h i n e , a n o y o u ' r e r i g h t . W h a t h a p p e n s i t h i s : t h e t h r e e m a g i c n u m b e r s

t h A m i g a t h a t t h e t e r m i n a l p r o g r a m ( p r i o r i t y 0 h a p r i o r i t yt h o t h e r t w p r o g r a m s , a n t h a t t h e d i t o r h a p r i o r i t y o v e r

h M a n d e l b r o t p r o g r a m . T h M a n d e l b r o t p r o g r a m c a n s a a n i w a n t s t t h e p o t t e d p l a n t o t h e d e s k .

h r e s u l t o t h i s p r i o r i t y s c h e m e i t h a t w h e n e v e r t h e t e r m i n a la m n e e d s t g e a n p r o c e s s c h a r a c t e r s f r o m t h k e y b o a r d o p o r t , i w i l l b a l l o w e d t d s o u s u a l l y i m m e d i a t e l y , a n a

w i t h i n a f e w m i l l i s e c o n d s . L i k e w i s e t h e d i t o r p r o g r a m w i l lb a c t i v e w h e n i h a t s e r v i c e t h k e y b o a r d o p e r f o r m

b u t , i a d d i t i o n , i w i l l o n l y b a c t i v e w h e n t h e t e r m i n a li n o a c t u a l l y p r o c e s s i n g d a t a . S i n c e c h a r a c t e r s a r c o

n i s l o w l y r e l a t i v e t t h s p e e d o t h C P U , e v e n a 1 2 0 0 b a u d ,h e d i t o r g e t s l o o t i m e t d i t t h i n g . S i m i l a r l y , w h e n t h e d i t o r

n o b u s y p r o c e s s i n g , a n t h e t e r m i n a l i n o b u s y , t h M a n d e l b r o tc a c h u r n o u s o m e m o r e o i t p i c t u r e . T h M a n d e l b r o ti t o b u s y t a l l o w t h e p o t t e d p l a n t a n t i m e a a l l .

h b o t t o m l i n e i t h a t t h e t e r m i n a l p r o g r a m r u n s v e r y n e a r l y a f u l lI w i l l b f i n i s h e d i t d o w n l o a d i a b o u t a h o u r . W h i l e i w a

y o w e r e w r i t i n g , a n n o t i c e d n s l o w d o w n i t h o y o u r e d i t o r , s f o a l i n t e n t s a n p u r p o s e s , y o g o j u s t

m u c h d o n e i t h h o u r a y o u w o u l d h a v e o t h e r w i s e . H m m . . .g o o d s f a r . W h a v e d o n e t w o h o u r s ' w o r t h o c o m p u t i n g i

o n h o u r . B u w h a t a b o u t t h p o o r M a n d e l b r o t p r o g r a m ? D i d i e a n y t h i n g d o n e ? O c o u r s e i d i d ! N e i t h e r d o w n l o a d i n g a n d

a r v e r y C P i n t e n s i v e , a n t h M a n d e l b r o t p r o g r a m g o o o f c y c l e s . G r a n t e d , i d i d n o t g e a h o u r ' s w o r t h o f c y c l e s , b u i o l o t . I p r a c t i c a l t e r m s , t h e M a n d e l b r o t p r o g r a m w i l l b a b o u t

o r t h r e e q u a r t e r s o t h w a t h r o u g h , a n w i l l r u f o a n o t h e rm i n u t e s t h a l f a h o u r . I w i l l r u l o n g e r i y o a r f a s tu s i n g m o r e C P c y c l e s t s e r v i c e t h e k e y b o a r d i n p u t , a n

i y o t y p e l i k e d o

o i s o m e w h a t u n d e r 1 . h o u r s , w h a v e d o n e t h r e e h o u r s ' w o r t hw o r k . I ' s a t h a t ' s p r e t t y g o o d b e n e f i t , a n w h e n y o c o n s i d e re v e n w h i l e d o i n g a l t h i s , w w e r e n o p r e v e n t e d f r o m c a l l i n g

s o m e o t h e r j o b , o f r o m l o o k i n g a a n o t h e r f i l e , l i s t i n g d i s kp e r f o r m i n g c a l c u l a t i o n s e t c . , i b e c o m e s s o m e t h i n g I a

a n o w i l l i n g t d w i t h o u t o h o m e c o m p u t e r . t h i n k i t ' s" b e i n g s p o i l e d " .

c a s e s o u n d e d b i u p s e t b a c k t h e r e w h e n t a l k i n g a b o u t I B a n l e m s a n o t h a t a g l a d t h e y a r f i n a l l y s e e i n g t h l i g h t .

m u l t i t a s k i n g , w h e n i a r r i v e s , w i l l e f f e c t i v e l y " l e g i t i m i z e " t h e , a n w A m i g a o w n e r s c a a l s i b a c k w i t h v e r y s m u g

x p r e s s i o n s i n d e e d . O c o u r s e , b e i n g p o l i t e , w w i l l n o l a u g hu p r o a r i o u s l y w h e n n e x t y e a r s o m e I B o w n e r t e l l s u h o g r e a t i i

b a b l e t r u f o u r p r o g r a m s a o n c e . W i l l w e

N e w ! I m p r o v e d !T R A N S B A S I C 2

w i t h S Y M A S S 1

" u s e d t b s a s h a m e d o m d u l l , m e s s y c o d e , b u n m a t t e r w h a t t r i e d j u s t c o u l d n ' t g e t r i o t h o s es t u b b o r n s p a g h e t t i s t a i n s ! " w r i t e s M r s . J e n n y R o R i c h m o n d H i l l , O n t a r i o . " T h e n t h T r a n s a c t o r p e o p l ea s k e d m t o t r y n e T r a n s B A S I C 2 w i t h S y m a s s ® .T h e y e x p l a i n e d h o T r a n s B A S I C 2 w i t h i t s c o r e s o t i n y ' t o k e n s ' , w o u l d g e m c o d e l o o k i n g c l e a n , f a s t !

" w a s c e p t i c a l , b u f i g u r e d t h e r e w a n h a r m i g i v i n g i t r y . W e l l , a l i t o o k w a o n l o a d a n w a c o n v i n c e d ! T r a n s B A S I C w e n t t w o r k a n d g o m c o d e l o o k i n g c l e a n a n e i s e c o n d s ! N o I ' t e l l i n ga l m f r i e n d s t t r T r a n s B A S I C i t h e i r m a c h i n e s ! "

T r a n s B A S I C 2 w i t h S y m a s s , t h s y m b o l i c a s s e m b l e r .P a c k a g e c o n t a i n s a l 1 s e t s o T r a n s B A S I C m o d u l e sf r o m t h m a g a z i n e , p l u s f u l l d o c u m e n t a t i o n . M a k e y o u rB A S I C p r o g r a m s r u f a s t e r a n b e t t e r w i t h o v e r 1 4 a d d e d s t a t e m e n t a n f u n c t i o n k e y w o r d s .

D i s k a n d M a n u a l $ 1 7 . 9 5 U S , $ 1 9 . 9 5 C d n .( s e e o r d e r c a r d a c e n t e r a n N e w s B R f o m o r e i n f o )

T r a n s B A S I C" C l e a n e r c o d e , l o a d a f t e r l o a d ! "

T h T r a n s a c t o r 7 J a n u a r y 1 9 8 8 ; V o l u m e 8 I s s u e O

Page 76: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 76/84

A C C E S ST h b e s t o n o n - c o m m e r c i a l s o f t w a r e

b S t e v e A h l s t r o m , D e n v e r , C o l o r a d o

T h i s n e r e g u l a r c o l u m n i n a t u r a l f o S t e v e A h l s t r o m h e ' s t h e . p r i m a r ys y s o p o C o m p u S e r v e ' s A m i g a F o r u m , w h i c h , b t h w a y , g e t s l o o t r a f f i c b a v i d A m i g a u s e r s a n p r o g r a m m e r s . H o w e v e r , A m i g a F o r u m w o n ' t b S t e v e ' so n l y s o u r c e a n y o c a b e h e ' l l r e p o r t a n i t e m w o r t h k n o w i n g a b o u t . S i y o h a v e s o m e i n f o r m a t i o n y o u ' d l i k e t s h a r e , y o c a l e a v e m e s s a g e t [ 7 6 7 0 3 , 2 0 0 6 ] o A m i g a F o r u m , o s e n d i t u a n w e ' l l p a s s i a l o n g t o S t e v e .

I t h w o r l d o f f r e e l y d i s t r i b u t a b l e s o f t w a r e f o t h A m i g a , t h e r ea r m a n y g e m s t b f o u n d . T h e r e i a l s o l o o b r o k e n g l a s s .T h i s c o l u m n i m e a n t t h e l p y o f i n d t h m o r e u s e f u l a n w o r t h w h i l e o t h e s e p r o g r a m s .

F i r s t o a l l , g u e s s s h o u l d t r y t o d e f i n e j u s t w h a t " f r e e l yd i s t r i b u t a b l e " m e a n s . T h e r e a r e g e n e r a l l y c l a s s e s o f " f r e e l yd i s t r i b u t a b l e " s o f t w a r e .

P u b l i c D o m a i n

" P u b l i c D o m a i n " , o t h s u r f a c e , s e e m s t b t h e a s i e s t t d e s c r i b e . I n r e a l i t y , i t ' s p r o b a b l y t h h a r d e s t ( a l e a s t a f a a U c o p y r i g h t l a g o e s ) .

T t h n o n - l e g a l t y p e , " P u b l i c D o m a i n " m e a n s t h a t t h a u t h o r o t h w o r k ( i o u c a s e , t h e a u t h o r o a A m i g a p r o g r a m ) h a sg i v e n u a l r i g h t s t o t h w o r k a n h a p l a c e d h i s / h e r w o r k i n t ot h " P u b l i c D o m a i n " f o a l t u s e , e n j o y , c h a n g e , s e l l , o w h o e v e r t h c a s e m a b e T h i n t e n t i t h a t t h a u t h o r c l a i m sn o V i g h t s a a l o t h w o r k . U n d e r U c o p y r i g h t l a w , t h o u g h , i t ' s

l i t t l e l e s s c l e a r - c u t t h a n t h a t . T h l a d o e s n o s p e c i f i c a l l y s a t h a t s o m e t h i n g c a b p l a c e d i n t o t h " P u b l i c D o m a i n " o t h e rt h a n w o r k w h i c h h a g o n e b e y o n d t h e t i m e f r a m e g r a n t e d f o c o p y r i g h t s . T h e r e a r m a n y r u l e s a b o u t h o a u t h o r s m a r e c l a i m t h e i r r i g h t s ( w i t h i n s p e c i f i c t i m e p e r i o d ) i f o s o m er e a s o n t h e y f e e l t h a t t h e y h a v e l o s t c o n t r o l o t h o s e r i g h t s . I s o m e o n e c a p l a c e p r o g r a m i n t o t h " P u b l i c D o m a i n " t h e nl a t e r r e - e s t a b l i s h c o n t r o l o t h r i g h t s t h e y e x p l i c i t l y g a v e u e a r l i e r , w a i i n d e e d " P u b l i c D o m a i n " t b e g i n w i t h ? S e t h p o s s i b l e p r o b l e m s ?

W h e n i i s t a t e d t h a t p r o g r a m i " P u b l i c D o m a i n " , t h i n t e n t o t h e a u t h o r u s u a l l y i t h a t t h p r o g r a m m a b f r e e l y d i s t r i b u t e da n t h a u t h o r h a n i n t e n t i o n o r e c l a i m i n g r i g h t s o l i m i t i n gd i s t r i b u t i o n i n a n w a y .

S h a r e w a r e

" S h a r e w a r e " i l i t t l e m o r e c l e a r c u t . I t ' s m e r e l y a n o n -c o n v e n t i o n a l m e t h o d o m a r k e t i n g p r o g r a m . I s o m e c a s e s , i

w o r k s w e l l , b u i t h v a s t m a j o r i t y o c a s e s i i n o v e r ye f f e c t u a l .

W i t h " S h a r e w a r e " , t h a u t h o r i r e t a i n i n g a l o t h r i g h t s t t h w o r k a n i a l l o w i n g d i s t r i b u t i o n o t h w o r k v i e l e c t r o n i cn e t w o r k s , B B S s , u s e r g r o u p s a n s o n S o m e w h e r e i t h d o c u m e n t a t i o n f o t h p r o g r a m y o u ' l l f i n d s t a t e m e n t o t h a u t h o r ' s s t i p u l a t i o n s f o d i s t r i b u t i o n . N o r m a l l y i s a y s s o m e t h i n gt t h i s e f f e c t : " I y o l i k e t h i s p r o g r a m a n f i n d i u s e f u l , s e n d m $ x x . x x . I y o u d o n o t , f e e l f r e e t d i s t r i b u t e t h i s f u r t h e r , b u p l e a s e d n o t c o n t i n u e t u s i i y o u h a v e n o p a i d f o i t . " I f y o d s e n d t h a u t h o r m o n e y , y o w i l l u s u a l l y b p u o m a i l i n gl i s t t i n f o r m y o o n e w e r v e r s i o n s o t h p r o g r a m a n d h o t g e t h e m . S o m e t i m e s y o u ' l l b s e n t , u p o n p a y m e n t , t h l a t e s tv e r s i o n a n t h e p r i n t e d d o c u m e n t a t i o n . R e a d t h s t i p u l a t i o n sc a r e f u l l y b e c a u s e e a c h p r o g r a m i l i t t l e d i f f e r e n t .

" S h a r e w a r e " i g o o d c o n c e p t , b u l i k e m a n y g o o d c o n c e p t s , i h a m a n y a b u s e s . I c a m e a b o u t f o v a r i e t y o r e a s o n s . T h f o r e m o s t r e a s o n i t h a t s o m e o n e t h o u g h t o n e e d f o p r o g r a mb u t , b e c a u s e t h p r o g r a m d i d n ' t h a v e m a s s m a r k e t a p p e a l , n m a i n l i n e s o f t w a r e p u b l i s h e r w o u l d p i c k i u p B m a k i n g i " S h a r e w a r e " t h a u t h o r c a g e s o m e m o n e y f o t h t i m e a n e f f o r t s p e n t c r e a t i n g t h p r o g r a m . " S h a r e w a r e " u s u a l l y f i l l sv o i d b e t w e e n " P u b l i c D o m a i n " a n c o m m e r c i a l s o f t w a r e i q u a l i t y . U n f o r t u n a t e l y , m a n y p e o p l e a r n o p u t t i n g t h " S h a r ew a r e " l a b e l o e v e r y t h i n g t h e y w r i t e . T h p r o b l e m b e c o m e st h a t e v e r y o n e i a s k i n g f o m o n e y . M a n y p e o p l e h a v e d e c i d e dt h a t s i n c e t h e y d o n ' t h a v e t b u t h p r o g r a m i s t o r e t h e r e i n n e e d t s e n d i t h m o n e y f o i ( e v e n i t h e y f i n d t h p r o g r a mu s e f u l a n o f t e n u s e d ) b e c a u s e e v e r y o n e s e e m s t b a s k i n g f o m o n e y . T h i s i d e c i s i o n o n l y y o c a m a k e . B n o t m o n e t a r i l ys u p p o r t i n g t h o s e " S h a r e w a r e " p r o g r a m s y o f i n d u s e f u l , y o a r e d i s c o u r a g i n g t h " S h a r e w a r e " a u t h o r f r o m u s i n g t h i sm e t h o d o m a r k e t i n g f o o t h e r w o r k s : M a n y " S h a r e w a r e " p r g r a m s r e a l l y d e s e r v e s u p p o r t .

O t h e r

T h 3 r c l a s s i r e a l l y j u s t s u b c l a s s o " S h a r e w a r e " . I t ' sp r o g r a m t h a t i c o p y r i g h t e d b u f o w h i c h t h a u t h o r a s k s n

T h T r a n s a c t o r 7 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e 0

Page 77: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 77/84

c o m p e n s a t i o n . T h a u t h o r r e t a i n s t h r i g h t s t o t h p r o g r a m ,o f t e n b e c a u s e h e w a n t s t l e a v e h i o p t i o n s o p e n l e g a l l y t s t o ps o m e o n e e l s e f r o m s e l l i n g h i w o r k f o p r o f i t w h e n h i o r i g i n a li n t e n t w a f o t h p r o g r a m t b f r e e .

S e t P r i : A d j u s t t h p r i o r i t y o a c t i v e t a s k s

S e t P r i b B e B l i s h i f i n e e x a m p l e o n e e d e d p r o g r a m t h a th a l i t t l e c o m m e r c i a l m a r k e t a b i l i t y . T q u o t e B e n ' s d o c u m e n t at i o n f o S e t P r i :

" S e t P r i i N O S h a r e w a r e ; f a b i f r o m m t p r e s u m eu p o n y o u . I y o r e a l l y l i k e t h p r o g r a m , j u s t t e l l m s b m a i l o o C o m p u S e r v e . I y o u h a v e s u g g e s t i o n s , y o c a g i v e t h o s e a l s o . . . i y o u w a n t t c o m p l a i n , c a l l C o m m od o r e . d o n ' t w a n t t h e a r i t < g r i n > . "

S e t P r i a l l o w s y o t s e o c h a n g e t h p r i o r i t y o f a n t a s kc u r r e n t l y a c t i v e i t h s y s t e m . W h e n S e t P r i i r u n , i b r i n g s u s m a l l w i n d o w s h o w i n g a l o y o u r c u r r e n t t a s k s . I y o h a v em o r e t h a n e i g h t t a s k s a c t i v e , y o c a s c r o l l t h r o u g h t h l i s t w i t ht h e p r o p o r t i o n a l s l i d e r . J u s t c l i c k o t h t a s k n a m e ( p r o g r a mn a m e ) y o w i s h t c h a n g e a n s e t h n e t a s k p r i o r i t y , e i t h e rh i g h e r o r l o w e r .

T h e r e a r m a n y t i m e s ( l i k e n o w ) t h a t m a h a v e m A m i g ad o i n g m a n y t h i n g s a o n c e . R i g h t n o w , I ' c o m p i l i n g a p r o g r a m ,d o w n l o a d i n g p r o g r a m f r o m t h A m i g a F o r u m o C o m p u S e r v e ,a n t y p i n g t h i s c o l u m n . S i n c e t h c o m p i l e r i d o i n g f r e q u e n td i s k a c c e s s e s , a n t h p r i o r i t y i ( n o r m a l l y ) s e h i g h e r t h a ne i t h e r m t e r m p r o g r a m o t e x t e d i t o r , w a f i n d i n g t h a t w o u l dh a v e c h a r a c t e r s ' d r o p p e d ' w h e n t y p i n g . S o , r a S e t P r i ( w h i c hh a s f o u n d p e r m a n e n t h o m e i m c d i r e c t o r y ) . b u m p e d u t h p r i o r i t y o m t e r m p r o g r a m f r o m 0 t a n o m e d i t o rf r o m 0 t 2

W i t h t e r m i n a l p r o g r a m s a n t e x t e d i t o r s , v e r y l i t t l e C P t i m e i u s e d . O n l y w h e n y o a r a c t u a l l y t y p i n g d t h p r o g r a m s n e e dt r u n . I C P t i m e , t h e r e i h u g e a m o u n t o t i m e f o t h s y s t e m t u s b e t w e e n k e y s t r o k e s ( e v e n i y o a r 1 5 W P t y p i s t ! ) S i n c e I ' m r u n n i n g t h c o m p i l e r i t h b a c k g r o u n d , i i r u n n i n g m a r g i n a l l y s l o w e r t h a n i w o u l d i i w e r e t h o n l y t a s kr u n n i n g b u t , b e c a u s e o r e s e t t i n g t h t a s k s ' p r i o r i t y l e v e l s , t h c o m p i l e r i s n ' t i n t e r f e r i n g w i t h e i t h e r m t e r m p r o g r a m o t e x te d i t o r . T o m e , c o n t r o l l a b l e m u l t i t a s k i n g i t h e b e s t t h i n g t h eA m i g a h a g o i n g f o i t a n S e t P r i m a k e s i e a s y t o b t a i n t h a tc o n t r o l .

N e x t I s s u e

T h e r e a r d o z e n s o f f r e e l y d i s t r i b u t a b l e p r o g r a m s t h a t c a m a k el i f e l o e a s i e r f o y o u . I ' m s u r e y o k n o w a b o u t m a n y o t h e m ,e s p e c i a l l y i y o f r e q u e n t t h e c o m m e r c i a l n e t w o r k s a n l o c a lB B S s . S o m e o t h e m m a h a v e s l i p p e d p a s t y o u r n o t i c e . T h e r ea r m a n y f r e e l y d i s t r i b u t a b l e g a m e s , t e r m i n a l p r o g r a m s , l a g u a g e s , t e x t e d i t o r s , s p e l l c h e c k e r s a l m o s t a n y t h i n g y o c a i m a g i n e . I ' l l b t e l l i n g y o a b o u t m a n y o t h e m i f u t u r e e d i t i o n so f t h i s c o l u m n . I t h e r e i s o m e t h i n g s p e c i f i c y o u ' d l i k e t s e c o v e r e d , j u s t l e m k n o w !

B i t s P i e c e s I T h D i s k

F r o m t h f a m o u s b o o k o f t h e s a m e n a m e . T r a n s a c t o rP r o d u c t i o n s n o b r i n g s y o B i t s P i e c e s I T h D i s k /Y o u ' l l t h r i l l t t h s p e c i a l e f f e c t s o f t h e s c r e e nd a z z l e r s l Y o u ' l l l a u g h a t h h o u r s o t y p i n g t i m ey o u ' l l s a v e l Y o u ' l l b e I n s p i r e d a y o b o l d l y g w h e r e n b i t s h a v e g o n e b e f o r e !" E x t r a o r d i n a r i l y f a i t h f u l t t h p l o to t h b o o k . . . T h e B A a l o n e i w o r t h t h p r i c e o a d m i s s i o n / "

V i n c e n t C a n b y t e

" A b s o l u t e l ym a g n e t i c ! ! "

G e n e S y s c a l l

" I y o m o u n t o n l y o n b i t s d i s k i 1 9 8 7 , m a k e i t h i so n e / T h e f u l l y c r o s s - r e f e r e n c e d I n d e x I u n f o r g e t t a b l e l

R e c s R e a d , N e Y o r k T l

B I T S P I E C E S I : T H D I S K , M y l a r F i l m , I a s s o c i a t i o n w i t h T r a n s a c t o r P r o d u c t i o n s .P l a y i n g a d r i v e n e a r y o u l

D i s k $ 8 . 9 5 U S $ 9 . 9 5 C d n . B o o k 1 4 . 9 5 U S 1 7 . 9 5 C d n .B o o k D i s k C o m b o J u s t 1 9 . 9 5 U S , $ 2 4 . 9 5 C d n l

T h T r a n s a c t o r 7 J a n u a r y 1 9 8 8 ; V o l u m e 8 I s s u e O

Page 78: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 78/84

N e w s B R S u b m i t t i n g N E W S B R P r e s s R e l e a s e s

I y o h a v e p r e s s r e l e a s e y o w o u l d l i k e t s u b m i t f o t h N E W S B R c o l u m n ,m a k e s u r e t h a t t h c o m p u t e r o r d e v i c e f o w h i c h t h p r o d u c t i i n t e n d e d i p r o m i n e n t l y n o t e d . W r e c e i v e h u n d r e d s o p r e s s r e l e a s e s f o e a c h i s s u e , a n o n e s w h o s e i n t e n d e d r e a d e r s h i p i n o c l e a r m u s t u n f o r t u n a t e l y g s t r a i g h t t o t h t r a s h b i n . I s h o u l d a l s o b e m e n t i o n e d h e r e t h a t w o n l y p r i n t p r o d u c t r e l e a s e sw h i c h a r i s o m e w a y a p p l i c a b l e t C o m m o d o r e e q u i p m e n t . N e w s o e v e n t ss u c h a c o m p u t e r s h o w s s h o u l d b r e c e i v e d a l e a s t m o n t h s i a d v a n c e .

T r a n s a c t o r N e w sT r a n s a c t o r f o t h A m i g aI c a s e y o h a v e n ' t h e a r d , t h p r e m i e r e i s s u e o T r a n s a c t o r f o r t h e A m i g a w i l l b r e l e a s e d t h i s J a n u a r y . T h f o l l o w i n g f e i t e m s d e s c r i b e s o m e e x t r a s p e c i a l o f f e r st h a t y o s h o u l d n ' t m i s s m o s t e x p i r e J a n u a r y 1 s t , 1 9 8 8 .

H a l f P r i c e U n t i l J a n u a r y 1 s t !I c a s e t h a t l o o k s l i k e t y p o , h e r e i i r e p e a t e d . S u b s c r i p t i o n s t T r a n s a c t o r f o t h A m i g a w i l l b H A L F P R I C E u n t i l J a n u a r y 1 s t , 1 9 8 8 . S e n d j u s t $ 7 . 5 0 U o $ 9 . 5 0 C d f o f u l l y e a r o T r a n s a c t o r f o A m i g a p r o g r a m m e r s !D i s k s u b s c r i p t i o n p r i c e s a r e e v e n m o r e i n c r e d i b l e ! U n t i l J a n u a r y 1 s t , 1 9 8 8 ,T r a n s a c t o r f o t h A m i g a d i s k s u b s c r i p t i o n w i l l b j u s t $ 2 9 . 9 5 U o $ 3 6 . 9 5 C d n !T h a t ' s n e a r l y h a l f o f t h r e g u l a r p r i c e ! Y o u ' l l g e d i s k w i t h e v e r y m a g a z i n ec o n t a i n i n g a l t h p r o g r a m s w p u b l i s h f o t h A m i g a , a n w e ' l l p r o b a b l y a d e x t r a p r o g r a m s t h a t a r e n ' t p u b l i s h e d t o o .A f t e r J a n u a r y 1 s t , 1 9 8 8 , r e g u l a r s u b s c r i p t i o n p r i c e s f o T r a n s a c t o r f o t h A m i g aw i l l b i e f f e c t . M a g a z i n e s u b s c r i p t i o n p r i c e s a r e t h e s a m e a f o t h o r i g i n a lT r a n s a c t o r 1 U a n 1 9 C a n a d i a n . D i s k s u b s c r i p t i o n s f o t h n e w m a g w i l lb l i t t l e m o r e u n t i l t h p r i c e o 3 V i n c h d i s k s c o m e s d o w n $ 5 5 . 0 0 U a n $ 6 7 . 0 0 C d n .

W a n t T S w i t c h !W i t h t h T r a n s a c t o r f o t h A m i g a c o m i n g t h i s J a n u a r y , m a n y o o u r e a d e r s w i l lw a n t t s w i t c h t t h n e w m a g f o t h e h i g h e r c o n c e n t r a t i o n o A m i g a m a t e r i a l .N a t u r a l l y t h e r e w i l l b o t h e r s t h a t w o n ' t , a n s t i l l o t h e r s t h a t w i l l w a n t b o t hm a g a z i n e s .T s w i t c h t t h n e m a g a z i n e , t h e r e ' s n c h a r g e . S i m p l y p u y o u r n a m e a n s u b s c r i p t i o n n u m b e r o o u p o s t a g e p a i d c a r d a n c h e c k o f t h e a p p r o p r i a t e b o x .P l e a s e d o n ' t o m i t y o u r n a m e a t h i s g i v e s u s c r o s s - r e f e r e n c e t e n s u r e w c h a n g e t h c o r r e c t s u b s c r i b e r , r e c o r d .R e m e m b e r , t h e r e ' s o n m o r e T r a n s a c t o r c o m i n g o u b e f o r e t h f i r s t i s s u e o T r a n s a c t o r f o t h A m i g a . A u s u a l , i w i l l a l s o c o n t a i n A m i g a m a t e r i a l . B u i t h i si s s u e m a r k s y o u r l a s t o n e , y o u ' l l n o o n l y n e e d t s w i t c h , y o u ' l l n e e d t r e n e w a w e l l .

W a n t B o t h !F o r t h o s e w h w a n t b o t h m a g a z i n e s , w h i g h l y r e c o m m e n d y o t a k e a d v a n t a g eo t h p r e - r e l e a s e s u b s c r i p t i o n p r i c i n g f o t h n e A m i g a p u b l i c a t i o n . A f t e rJ a n u a r y 1 s t , w e ' l l b o f f e r i n g s p e c i a l c o m b i n a t i o n s u b s c r i p t i o n p r i c i n g , b u i w o n ' t m a t c h t h n i c e p r e - r e l e a s e d e a l s w e ' r e o f f e r i n g n o w . D e t a i l s t b a n n o u n c e d n e x t i s s u e .

S u b s c r i p t i o n R e n e w a l s a n E n q u i r i e sW g e l o o c a l l s a t t h o f f i c e . O n c o m m o n r e a s o n i t e n q u i r e a b o u tm e r c h a n d i s e t h a t h a n o b e e n r e c e i v e d . S b e f o r e c a l l i n g a b o u t a s u b s c r i p t i o no r d e r o r o t h e r p u r c h a s e , p l e a s e t r t f o l l o w t h e s e g u i d e l i n e s :

F i r s t o a l l , m a k e s u r e y o c o n t a c t t h e r i g h t p e o p l e ; i y o r e c e i v e T r a n s a c t o rw i t h t h s p e c i a l T P U G i n s e r t , y o s h o u l d c a l l T P U G , n o t T r a n s a c t o r P u b l i s hi n g . I y o u r e n e w s u b s c r i p t i o n w i t h T r a n s a c t o r , y o w i l l r e c e i v e t h m a g a z i n ew i t h o u t t h i n s e r t , a n y o u r T P U G m e m b e r s h i p w i l l n o b r e n e w e d .

S e c o n d , n o t e t h e x p i r y d a t e o y o u r s u b s c r i p t i o n ; t h V o l u m e a n I s s u en u m b e r o y o u r l a s t i s s u e i s h o w n o t h f i r s t l i n e o f y o u r m a i l i n g l a b e l .I y o u ' r e s u b s c r i b e r , h a v e y o u r s u b s c r i p t i o n n u m b e r r e a d y i t ' s t h f a s t e s tw a f o u t c h e c k .

M a i l O r d e r P r o d u c t s :C l e a r l y p r i n t y o u r f u l l n a m e , m a i l i n g a d d r e s s , p h o n e n u m b e r , a n C o m p uS e r v e a c c o u n t n u m b e r i y o h a v e o n e . C o n f i r m i n g a a d d r e s s o p o t e n t i a le r r o r i a c c o m p l i s h e d m u s h f a s t e r o v e r t h p h o n e , v o i c e o r d a t a .

• F o r r e n e w a l s , i n c l u d e y o u r s u b s c r i p t i o n n u m b e r A N a t l e a s t o n o t h e r p i e c eo f i d e n t i f i a b l e i n f o r m a t i o n s u c h a y o u r n a m e . T h i s a l l o w s u t e n s u r e w e x t e n d t h r i g h t p e r s o n s s u b s c r i p t i o n . F o r n e s u b s c r i p t i o n s , p l e a s e i n c l u d ey o u r a d d r e s s . B e l i e v e i o n o t , w e ' v e a c t u a l l y r e c e i v e d o r d e r s f o s u b s c r i p t i o n sa n o t h e r p r o d u c t s w i t h n a d d r e s s n o o n l y a r w u n a b l e t c o m p l y , b u w c a n ' t e v e n s e n d b a c k t h u n c a n c e l l e d c h e q u e !

• O n t a r i o r e s i d e n t s : r e m e m b e r t a d 7 p r o v i n c i a l s a l e s t a x . T h r e p l y c a r dc l e a r l y s h o w s w h i c h i t e m s a r t a x a b l e .M a k e s u r e p a y m e n t i e n c l o s e d o c r e d i t c a r d n u m b e r i i n c l u d e d , o w w i l ln o b a b l e t f i l l t h o r d e r . I p a y i n g b c r e d i t c a r d , c l e a r l y p r i n t A L t h n u m b e r s o t h c a r d , a n i n c l u d e t h e e x p i r y d a t e .D n o s t a p l e o g l u e s u b s c r i p t i o n c a r d s ; c a r d s s e a l e d i n t h i s w a c a g e d e s t r o y e d w h e n o p e n e d , c a u s i n g g r e a t p r o b l e m s i f i l l i n g t h o r d e r . I t ' s b e s t t u s t a p e a r o u n d t h e t h r e e o p e n e d g e s .

T h 2 0 / 2 0 D e a l. . i s s t i l l i n e f f e c t o r d e r 2 s u b s c r i p t i o n s t t h m a o d i s k , 2 0 b a c k i s s u e s , 2 d i s k s , e t c . , a n g e 2 d i s c o u n t . H o w e v e r , t h i s o f f e r c a n n o t b c o m b i n e d w i t ho t h e r s p e c i a l s , o t T P U G s u b s c r i p t i o n s a n p r o d u c t s .

T r a n s a c t o r S p e c i a l O f f e rT h s p e c i a l o f f e r t h i s i s s u e i f o T r a n s a c t o r B a c k I s s u e s . O r d e r a n y b a c k i s s u e a t h r e g u l a r p r i c e o f $ 4 . 5 0 ( U S / C ) , a n g e t a d d i t i o n a l b a c k i s s u e s f o o n l y $ 2 . 0 0e a c h ! O r d e r 1 t o t a l a n t h e f f e c t i v e p r i c e p e c o p y i c u b h a l f ! ( $ 4 . 5 0$ 2 . 0 0 $ 2 2 . 5 0 ) O n c e a g a i n , t h i s s p e c i a l o f f e r i i n e f f e c t f o r t h i s i s s u e o n l y s i a p p l i e s o n l y t o r d e r s p o s t m a r k e d b e f o r e J a n u a r y 1 , 1 9 8 8 .

T r a n s a c t o r M a i l O r d e rT h f o l l o w i n g d e t a i l s a r f o p r o d u c t s l i s t e d o t h m a i l o r d e r c a r d . I y o h a v ep a r t i c u l a r q u e s t i o n a b o u t a i t e m t h a t i s n ' t a n s w e r e d h e r e , p l e a s e w r i t e o r c a l l .W e ' l l g e b a c k t y o u a n d m o s t l i k e l y i n c o r p o r a t e t h e a n s w e r i n t o f u t u r e e d i t i o n so t h e s e d e s c r i p t i o n s s t h a t o t h e r s m i g h t b e n e f i t f r o m y o u r e n q u i r y .

M o v i n g P i c t u r e s t h C - 6 4 A n i m a t i o n S y s t e m , $ 2 9 . 9 5 ( U S / C )T h i s p a c k a g e i f a s t , s m o o t h , f u l l - s c r e e n a n i m a t o r f o t h C o m m o d o r e 6 4 w r i t t e n b A H A ! ( A c m e H e u r i s t i c A p p l i c a t i o n s ! ) . W i t h M o v i n g P i c t u r e s y o u s y o u r f a v o u r i t e g r a p h i c s t o o l t d r a w t h f r a m e s o y o u r m o v i e , t h e n s h o w i a f u l la n i m a t i o n s p e e d w i t h a s i n g l e c o m m a n d . M o v i e ' s c r i p t s ' w r i t t e n i B A S I C c a u s t h M o v i n g P i c t u r e s c o m m a n d s e t p r o v i d e c o m p l e t e c o n t r o l o a n i m a t e dc r e a t i o n s . B A S I C i s t i l l a v a i l a b l e f o e d i t i n g s c r i p t s o r e x e c u t i n g p r o g r a m s e v e nw h i l e m o v i e i b e i n g d i s p l a y e d . A n i m a t i o n s e q u e n c e s c a e a s i l y b e a d d e d t B A S I C p r o g r a m s . M o v i n g P i c t u r e s f e a t u r e s i n c l u d e : s p l i t s c r e e n o p e r a t i o n p a r tg r a p h i c s , p a r t t e x t - e v e n w h i l e m o v i e i r u n n i n g ; r e p e a t , s t o p a a n f r a m e ,c h a n g e p o s i t i o n a n c o l o u r s , v a r y d i s p l a y s p e e d , e t c ; h o l d s e v e r a l m o v i e s i m e m o r y a n s w i t c h i n s t a n t l y f r o m o n e m o v i e t a n o t h e r ; i n s t a n t , o n - l i n e h e l pa v a i l a b l e a t h t o u c h o k e y ; n c o p y p r o t e c t i o n u s e d o d i s k .

T h P o t p o u r r i D i s k , $ 1 7 . 9 5 U S $ 1 9 . 9 5 C d n .T h i s i C - 6 4 p r o d u c t f r o m t h e s o f t w a r e c o m p a n y c a l l e d A H A ! , o t h e r w i s ek n o w n a N i c k S u l l i v a n a n C h r i s Z a m a r a . T h P o t p o u r r i d i s k i w i d ea s s o r t m e n t o , 1 p r o g r a m s r a n g i n g f r o m g a m e s t e d u c a t i o n a l p r o g r a m s t u t i l i t i e s . A l p r o g r a m s c a n b e a c c e s s e d f r o m m a i n m e n u o l o a d e d s e p a r a t e l y .N c o p y p r o t e c t i o n i u s e d o t h d i s k , s y o u c a n c o p y t h p r o g r a m s y o u w a n tt y o u r o t h e r d i s k s f o e a s y a c c e s s . B u i l t - i n h e l p i a v a i l a b l e f r o m a n y p r o g r a m a a n t i m e w i t h t h t o u c h o k e y , s y o n e v e r n e e d t p i c k u m a n u a l o e x i t

T h T r a n s a c t o r 7 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 79: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 79/84

p r o g r a m t l e a r n h o t u s i t M a n y o t h p r o g r a m s o t h d i s k a r o h i g he n o u g h q u a l i t y t h a t t h e y c o u l d b r e l e a s e d o t h e i r o w n , b u y o g e a l 1 o t h P o t p o u r r i d i s k f o r j u s t 1 7 . 9 5 U 1 9 . 9 5 C a n a d i a n . S e t h A i n t h i s i s s u e f o m o r e i n f o r m a t i o n .

T r a n s B A S I C I $ 1 7 . 9 5 U S $ 1 9 . 9 5 C d n .A u p d a t e d T r a n s B A S I C d i s k i n o a v a i l a b l e , c o n t a i n i n g a l T m o d u l e s e v e rp r i n t e d . T h f i r s t T r a n s B A S I C d i s k w a r e l e a s e d j u s t a w p u b l i s h e d T r a n s B A S I CC o l u m n # s t h m o d u l e s f r o m c o l u m n s 1 0 , 1 1 a n 1 d i d n o t e x i s t . T h n e m a n u a l c o n t a i n s e v e r y t h i n g i t h o r i g i n a l , p l u s a l t h d o c s f o t h e x t r a s . T h e r ea r o v e r 1 4 c o m m a n d s a y o u r d i s p o s a l . Y o p i c k t h e o n e s y o w a n t t u s e , a n i a n c o m b i n a t i o n ! I t ' s s o s i m p l e t h a t s u m m a r y o f i n s t r u c t i o n s f i t s r i g h t o t h d i s k l a b e l . T h m a n u a l d e s c r i b e s e a c h o t h c o m m a n d s , p l u s h o t w r i t e y o u ro w c o m m a n d s .P e o p l e w h o r d e r e d T c a n u p g r a d e t T I f o t h p r i c e o r e g u l a r T r a n s a c t o rD i s k ( 8 . 9 5 / 9 . 9 5 ) . I y o a r u p g r a d i n g , y o d o n ' t n e c e s s a r i l y n e e d t s e n d u y o u r o l T d i s k ; i y o o r d e r e d i f r o m u s w w i l l h a v e y o u r n a m e o f i l e a n w i l l s e n d y o T I f o t h u p g r a d e p r i c e . P l e a s e i n d i c a t e o t h e o r d e r f o r m t h a ty o u h a v e t h o r i g i n a l T a n d w a n t i u p g r a d e d .S o m e T B w e r e s o l d a s h o w s , e t c , a n t h e y w o n ' t b r e c o r d e d i o u d a t a b a s e , I t h a t ' s t h c a s e , j u s t s e n d u s a n y t h i n g y o f e e l i p r o o f e n o u g h ( e . g . p h o t o c o p yy o u r r e c e i p t , y o u r m a n u a l c o v e r , o e v e n t h d i s k e t t e ) , a n T I i y o u r s f o t h u p g r a d e p r i c e .

T h A m i g a D i s k , $ 1 2 . 9 5 U S $ 1 4 . 9 5 C d n .F i n a l l y , t h f i r s t T r a n s a c t o r A m i g a d i s k i a v a i l a b l e . I c o n t a i n s a l o t h A m i g ap r o g r a m s p r e s e n t e d i t h m a g a z i n e , o c o u r s e , i n c l u d i n g s o u r c e c o d e a n d o c u m e n t a t i o n . Y o w i l l f i n d t h p o p u l a r " P o p C o l o u r s " p r o g r a m , t h e p r o g r a mm e r ' s c o m p a n i o n " S t r u c t u r e B r o w s e r " , t h G u r u - k i l l i n g " T r a p S n a p p e r " , u s e r -f r i e n d l y " P o p T o F r o n t " , a n o t h e r s . I n a d d i t i o n , w h a v e i n c l u d e d p u b l i c d o m a i np r o g r a m s - a g a i n , w i t h d o c u m e n t a t i o n t h a t w t h i n k T r a n s a c t o r r e a d e r s w i l lf i n d u s e f u l . A m o n g t h e s e a r t h i n d i s p e n s a b l e A R C ; C s h , a p o w e r f u l C L I -r e p l a c e m e n t D O s h e l l ; B L i n k , a l i n k e r t h a t i m u c h f a s t e r a n h a m o r e f e a t u r e st h a n t h s t a n d a r d A L i n k ; F o x y a n d L y n x , a 6 5 0 2 c r o s s a s s e m b l e r a n l i n k e r t h a tm a k e s i t d e b u t o t h A m i g a D i s k ; a n d a n e x c e l l e n t s h a r e w a r e t e x t e d i t o r c a l l e dU E d i t . I n a d d i t i o n , w h a v e i n c l u d e d o u o w e x p r e s s i o n - e v a l u a t o r c a l c u l a t o rt h a t u s e s v a r i a b l e s a n d w o r k s i a n n u m b e r b a s e . A l p r o g r a m s c o n t a i n s o u r c ec o d e a n d o c u m e n t a t i o n ; a l c a b r u n f r o m t h C L I , a n s o m e f r o m W o r kb e n c h . T h e r e ' s s o m e t h i n g f o e v e r y o n e o t h T r a n s a c t o r A m i g a d i s k .

T r a n s a c t o r T - S h i r t s , $ 1 3 . 9 5 U S , $ 1 5 . 9 5 C d n .J u m b o T - S h i r t , $ 1 7 . 9 5 U S , $ 1 9 . 9 5 C d n .

A m e n t i o n e d e a r l i e r , t h e y c o m e i S m a l l , M e d i u m , L a r g e , E x t r a L a r g e , a n J u m b o . T h J u m b o m a k e s g o o d n i g h t - s h i r t / b e a c h - t o p i t ' s B I G . I ' f o o t t a l l ,a n w e i g h i a s l i m 1 5 p o u n d s t h S m a l l f i t s m t i g h t , b u t h a t ' s h o l i k et h e m . I y o d o n ' t , w s u g g e s t y o o r d e r t h e m s i z e o v e r w h a t y o u s u a l l y b u y .O n o t h f r e e g i f t c h o i c e s w o f f e r w h e n y o o r d e r a c o m b i n a t i o n m a g a z i n eA N d i s k s u b s c r i p t i o n i T r a n s a c t o r T - S h i r t i t h s i z e a n c o l o u r o y o u rc h o i c e ( s o r r y , J u m b o e x c l u d e d ) . T h s h i r t s c o m e i r e d o r l i g h t b l u e w i t h a 3 c o l o u r s c r e e n o t h f r o n t f e a t u r i n g o u m a s c o t , D u k e , i s n a p p y w h i t e t u x a n t o h a t , s t a n d i n g b e h i n d o u r l o g o i 3 l e t t e r s .

I n n e r S p a c e A n t h o l o g y $ 1 4 . 9 5 U S $ 1 7 . 9 5 C d n .T h i s i o u e v e r p o p u l a r C o m p l e t e C o m m o d o r e I n n e r S p a c e A n t h o l o g y . E v e na f t e r t w y e a r s , w s t i l l g e i n q u i r i e s a b o u t i t c o n t e n t s . B r i e f l y , T h A n t h o l o g y i

r e f e r e n c e b o o k i h a n " r e a d i n g " m a t e r i a l ( i e . " p a r a g r a p h s " ) . I 1 2 c o m p a c t p a g e s , t h e r e a r e m e m o r y m a p s f o C B c o m p u t e r s , 3 D i s k D r i v e s ,a n m a p s o C O M A L ; s u m m a r i e s o B A S I C c o m m a n d s , A s s e m b l e r a n M L c o m m a n d s , a n W o r d p r o c e s s o r a n S p r e a d s h e e t c o m m a n d s . M a c h i n e L a ng u a g e c o d e s a n m o d e s a r s u m m a r i z e d , a w e l l a e n t r y p o i n t s t R O r o u t i n e s . T h e r e a r s e c t i o n s o M u s i c , G r a p h i c s , N e t w o r k a n d B B p h o n en u m b e r s , C o m p u t e r C l u b s , H a r d w a r e , u n i t - t o - u n i t c o n v e r s i o n s , p l u s m u c hm o r e . . . a b o u t 2 . m i l l i o n c h a r a c t e r s t o t a l !

T h T r a n s a c t o r B o o k o B i t s a n P i e c e s * 1 $ 1 4 . 9 5 U S $ 1 7 . 9 5 C d n .N o c o u n t i n g t h e T a b l e o C o n t e n t s , t h e I n d e x , a n t i t l e p a g e s , i t ' s 2 4 p a g e s o B i t s a n P i e c e s f r o m i s s u e s o l T r a n s a c t o r , V o l u m e s 4 t h r o u g h 6 E v e n i y o h a v ea l t h o s e i s s u e s , i m a k e s h a n d y r e f e r e n c e n m o r e f l i p p i n g t h r o u g hm a g a z i n e s f o t h a t o n b i t h a t y o j u s t k n o w i s o m e w h e r e . . . A l s o , e a c h i t e m i

f o r w a r d / r e v e r s e r e f e r e n c e d . O c c a s i o n a l l y t h e i t e m s i t h e B i t s . c o l u m n a p p e a r e da u p d a t e s t p r e v i o u s b i t s . B i t s t h a t w e r e s i m i l a r i n a t u r e a r a l s o c r o s s -r e f e r e n c e d . A n t h i n d e x m a k e s i e v e n e a s i e r t f i n d t h o s e q u i c k f a c t s t h a te l i m i n a t e l o o w h e e l r e - i n v e n t i n g .

T h B i t s a n P i e c e s D i s k , $ 8 . 9 5 U S , 9 . 9 5 C d n .B i t s B o o k A N D i s k , $ 1 9 . 9 5 U S , 2 4 . 9 5 C d n .

T h i s d i s k c o n t a i n s a l o t h p r o g r a m s f r o m t h e T r a n s a c t o r b o o k o B i t s a n P i e c e s ( t h e " b i t s b o o k " ) , w h i c h i t u r n c o m e f r o m t h " B i t s a n P i e c e s " s e c t i o n o p a s t i s s u e s o t h m a g a z i n e . T h " b i t s d i s k " c a s a v e y o l o o t y p i n g , a n i c o n j u n c t i o n w i t h t h b i t s b o o k a n i t c o m p r e h e n s i v e i n d e x c a y i e l d q u i c ks o l u t i o n t m a n y p r o g r a m m i n g p r o b l e m .

T h G - L I N K I n t e r f a c e , $ 5 9 . 9 5 U S 6 9 . 9 5 C d n .T h G l i n k i C o m m o d o r e 6 t I E E E i n t e r f a c e . I a l l o w s t h 6 t u s I E E Ep e r i p h e r a l s s u c h a s t h e 4 0 4 0 , 8 0 5 0 , 9 0 9 0 , 9 0 6 0 , 2 0 3 1 , a n d S F D - 1 0 0 1 d i s kd r i v e s , o a n y I E E E p r i n t e r , m o d e m , o e v e n s o m e H e w l e t t - P a c k a r d a n T e k t r o n i c s e q u i p m e n t l i k e o s c i l l o s c o p e s a n s p e c t r u m a n a l y z e r s . T h b e a u t y o t h G l i n k i i t " t r a n s p a r e n c y " t t h C 6 o p e r a t i n g s y s t e m . S o m e I E E Ei n t e r f a c e s f o t h 6 a d d B A S I C 4 . c o m m a n d s a n o t h e r t h i n g s t t h s y s t e mt h a t s o m e t i m e s i n t e r f e r e w i t h u t i l i t i e s y o m i g h t l i k e t i n s t a l l . T h G l i n k a d d sn o t h i n g ! I f a c t i t ' s s t r a n s p a r e n t t h a t s w i t c h i u s e d t t o g g l e b e t w e e n s e r i a la n d I E E E m o d e s , n o l i n k e d - i n c o m m a n d l i k e s o m e o t h o t h e r s . S w i t c h i n gf r o m o n b u t t h o t h e r i a l s o p o s s i b l e w i t h s m a l l s o f t w a r e r o u t i n e a sd e s c r i b e d i t h d o c u m e n t a t i o n .A o T r a n s a c t o r D i s k # 1 9 , a m o d i f i e d v e r s i o n o J i B u t t e r f i e l d ' s " C O P Y - A L L "w i l l b o e v e r y d i s k . I a l l o w s f i l e c o p y i n g f r o m s e r i a l t I E E E d r i v e s , o r v i c ev e r s a .

T h T r @ n s @ c t o r 1 5 4 1 R O U p g r a d e s , $ 5 9 . 9 5 U S , $ 6 9 . 9 5 C d n .Y o c a n b u r n y o u r o w u s i n g t h R O d u m p f i l e o T r a n s a c t o r D i s k # 1 3 , o y o c a g e s e f r o m u s T h e r e a r e 2 R O M s p e s e t , a n t h e y f i n o o n l y t h S A V E ®b u g , b u t n u m b e r o o t h e r b u g s t o ( a d e s c r i b e d i P . A . S l a y m a k e r ' s a r t i c l e , V o 7 I s s u e 0 2 ) . R e m e m b e r , i S A V E ® i a b o u t t f a i l o y o u , t h e n S c r a t c h a n S a v em a j u s t c l o b b e r y o t o o . T h i s h a s n ' t b e e n p r o v e n 1 0 0 % , b u t t h e s e R O M s w i l le l i m i n a t e a n p o s s i b i l i t i e s s h o r t o f d e l i b e r a t e l y c a u s i n g t h e m ( i e . a l l o c a t i n g o o p e n i n g d i r e c t a c c e s s b u f f e r s b e f o r e t h e S a v e ) .N O T E : O u r R O u p g r a d e k i d o e s N O f i i t h 1 5 4 1 C d r i v e s . W h e r e w s u p p l yt w R O M s , C o m m o d o r e n o w h a i d o w n t o n M A S S I V E 1 K b y t e R O M . W d o n ' t k n o w i t h n e d r i v e s s t i l l c o n t a i n t h b u g s e l i m i n a t e d b o u k i t , b u w e ' l lf i n d o u a n r e - c u t a s e c o n d k i i n e c e s s a r y . I t h m e a n t i m e , 1 5 4 1 C o w n e r ss h o u l d n o o r d e r t h i s i t e m u n t i l f u r t h e r n o t i c e .

T h M i c r o S l e u t h : C 6 4 / 1 5 4 1 T e s t C a r t r i d g e , $ 9 9 . 9 5 U S , $ 1 2 9 . 9 5 C d n .W n e v e r e x p e c t e d t h i s c a r t r i d g e , d e s i g n e d b B r i a n S t e e l e ( s e r v i c e t e c h n i c i a nf o s e v e r a l s c h o o l s i s o u t h e r n O n t a r i o ) , w o u l d t u r n o u t t b s o p o p u l a r . T h M i c r o S l e u t h w i l l t e s t t h R A o C 6 e v e n i t h m a c h i n e i t o s i c k t r u p r o g r a m ! T h c a r t r i d g e t a k e s c o m p l e t e c o n t r o l o t h m a c h i n e . I t e s t s a l R A i o n e m o d e , a l R O i a n o t h e r m o d e , a n d p u t s u m e n u w i t h t h f o l l o w i n gc h o i c e s :

1 C h e c k d r i v e s p e e d2 C h e c k d r i v e a l i g n m e n t3 1 5 4 1 S e r i a l t e s t4 C 6 s e r i a l t e s t

5 J o y s t i c k p o r t t e s t6 J o y s t i c k p o r t t e s t7 C a s s e t t e p o r t t e s t8 U s e r p o r t t e s t

s e c o n d b o a r d ( i n c l u d e d ) p l u g s o n t o t h U s e r P o r t ; i c o n t a i n s L E D s t h a t l e y o z e r o i o t h f a u l t y c h i p . C o m p l e t e w i t h m a n u a l .

T r a n s a c t o r D i s k s , T r a n s a c t o r B a c k I s s u e s , a n M i c r o f i c h eA l T r a n s a c t o r s s i n c e V o l u m e I s s u e 0 a r n o a v a i l a b l e o m i c r o f i c h e .A c c o r d i n g t C o m p u t r e x , o u r f i c h e m a n u f a c t u r e r , t h e s t r i p s a r e t h e " p o p u l a r 9 p a g e s i z e " , s o t h e y s h o u l d b c o m p a t i b l e w i t h e v e r y f i c h e r e a d e r . S o m e i s s u e s a r O N L Y a v a i l a b l e o m i c r o f i c h e t h e s e a r e m a r k e d " M o n l y " . T h o t h e r i s s u e sa r a v a i l a b l e i b o t h p a p e r a n f i c h e . D o n ' t c h e c k b o t h b o x e s f o t h e s e u n l e s sy o w a n t b o t h t h p a p e r v e r s i o n A N t h e m i c r o f i c h e s l i c e f o t h s a m e i s s u e .T k e e p t h i n g s s i m p l e , t h e p r i c e o T r a n s a c t o r M i c r o f i c h e i t h s a m e a m a g a z i n e s , b o t h f o s i n g l e c o p i e s a n s u b s c r i p t i o n s , w i t h o n e x c e p t i o n :c o m p l e t e s e t o f 2 4 ( V o l u m e s 4 , 5 , 6 , a n 7 ) w i l l c o s t j u s t $ 4 9 . 9 5 U S , $ 5 9 . 9 5 C d n .

T h T r a n s a c t o r 7 7 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 80: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 80/84

T h i s l i s t a l s o s h o w s t h " t h e m e s " o e a c h i s s u e . T h e m e i s s u e s d i d n ' t s t a r t u n t i lV o l u m e 5 I s s u e 0 1 T r a n s a c t o r D i s k # 1 c o n t a i n s a l p r o g r a m s f r o m V o l u m e 4 a n D i s k # c o n t a i n s a l p r o g r a m s f r o m V o l u m e 5 I s s u e s 1 - 3 . A f t e r w a r d s t h e r e i

s e p a r a t e d i s k f o e a c h i s s u e . D i s k f r o m T h L a n g u a g e s I s s u e c o n t a i n sC O M A L 0 . 1 4 , s o f t - l o a d e d , s l i g h t l y s c a l e d - d o w n v e r s i o n o t h C O M A L 2 . c a r t r i d g e . A n V o l u m e 6 I s s u e 0 l i s t s t h d i r e c t o r i e s f o r T r a n s a c t o r D i s k s t 9

V o l .V o l .V o l .V o l .V o l .V o l .V o l .V o l .V o l .V o l .V o l .V o l .V o l .V o l .V o l .V o l .V o l .V o l .V o l .V o l .V o l .V o l .V o l .V o l .

4 I s s u e 0 4 I s s u e 0 4 I s s u e 0 5 I s s u e 0 5 I s s u e 0 5 I s s u e 0 5 I s s u e 0 5 I s s u e 0 5 I s s u e 0 6 I s s u e 0 6 I s s u e 0 6 I s s u e 0 6 I s s u e 0 6 I s s u e 0 6 I s s u e 0 7 I s s u e 0 7 I s s u e 0 7 I s s u e 0 7 I s s u e 0 7 I s s u e 0 7 I s s u e 0 8 I s s u e 0 8 I s s u e 0 8 I s s u e 0

( D i s k 1 V o l . 4 I s s u e 0 4 M o n l y ( D i s k 1 ( D i s k 1 V o l . 4 I s s u e 0 5 M o n l y ( D i s k 1 ( D i s k 1 V o l . 4 I s s u e 0 M o n l y ( D i s k 1

S o u n d a n G r a p h i c s ( D i s k 2 T r a n s i t i o n t M a c h i n e L a n g u a g e - M o n l y ( D i s k 2 P i r a c y a n P r o t e c t i o n M o n l y ( D i s k 2 B u s i n e s s E d u c a t i o n M o n l y ( D i s k 3

- H a r d w a r e P e r i p h e r a l s ( D i s k 4 A i d s U t i l i t i e s ( D i s k 5 M o r e A i d s U t i l i t i e s ( D i s k 6

- N e t w o r k i n g C o m m u n i c a t i o n s ( D i s k 7 T h L a n g u a g e s ( D i s k 8 I m p l e m e n t i n g T h S c i e n c e s ( D i s k 9

- H a r d w a r e S o f t w a r e I n t e r f a c i n g ( D i s k 1 0 R e a l L i f e A p p l i c a t i o n s ( D i s k 1 1 R O K e r n e l R o u t i n e s ( D i s k 1 2 G a m e s F r o m T h e I n s i d e O u ( D i s k 1 3 P r o g r a m m i n g T h C h i p s ( D i s k 1 4 G i z m o s a n d G a d g e t s ( D i s k 1 5

- L a n g u a g e s I ( D i s k 1 6 S i m u l a t i o n s a n M o d e l l i n g ( D i s k 1 7 M a t h e m a t i c s ( D i s k 1 8 O p e r a t i n g S y s t e m s ( D i s k 1 9 F e a t u r e : S u r g e P r o t e c t o r ( D i s k 2 0

I n d u s t r y N e w sW o r l d O C o m m o d o r e S h o wT h i s y e a r ' s W o r l d o C o m m o d o r e S h o w p r o m i s e s t b a g r e a t a i p r e v i o u sy e a r s , a n w e ' l l b t h e r e a u s u a l . S h o w o r g a n i z e r s t e l l u t h a t t h e o r i g i n a l f l o o rs p a c e a l l o t m e n t i 9 0 t a k e n a l r e a d y a n t h a t m o r e i b e i n g a r r a n g e d .U n l i k e p r e v i o u s y e a r s , t h e o f f i c i a l s h o w h o t e l i n o t h e A i r p o r t S k y l i n e . I t ' s b i f a r t h e r f r o m t h I n t e r n a t i o n a l C e n t e r , b u t h S k y l i n e r u n s r e g u l a r s h u t t l e b u s e r v i c e t a n f r o m t h s h o w n i c e c h a n g e !S p e c i a l s h o w r a t e s h a v e b e e n a r r a n g e d f o m o r e i n f o r m a t i o n c o n t a c t A i r p o r tS k y l i n e r e s e r v a t i o n s a ( 4 1 6 ) 2 4 4 - 1 7 1 1 .

N e E n g l a n d 1 9 8 7 C o m m o d o r e - S p e c i f i c C o m p u t e r F a i rM A R C A N e E n g l a n d i h o s t i n g t h i s e v e n t o N o v e m b e r 1 a n d 1 5 , 1 9 8 7 a P a r k W e s t H o t e l a n C l u b , M a r l b o r o , M A T h F a i r w i l l i n c l u d e v e n d o r e x h i b i t s o fC o m m o d o r e 6 4 , 1 2 8 a n d A m i g a p r o d u c t s ; s e m i n a r s b n a t i o n a l l y - k n o w n s p e a ke r o b e g i n n e r u s e r s , t e l e c o m m u n i c a t i o n s , l a n g u a g e s , g r a p h i c s , m u s i c a n m o r e ; p u b l i c d o m a i n s o f t w a r e a n r e s o u r c e t a b l e s f e a t u r i n g h u n d r e d s o d i s k s o P m a t e r i a l f o t h A m i g a a n e x p e r t s o n h a n d t a n s w e r q u e s t i o n s . G e n e r a la d m i s s i o n i $ 1 f o d a y s w i t h u n l i m i t e d s e m i n a r s ; o n d a y a d m i s s i o n i $ w i t h o u t a c c e s s t t h s e m i n a r s , $ e x t r a f o s e m i n a r p r i v i l e d g e s . M A R C Am e m b e r s s h o u l d c o n t a c t t h e i r u s e r g r o u p f o s p e c i a l r a t e s .C o n t a c t : F r a n k O r d w a y , 6 F l a g g R o a d , M a r l b o r o , M 0 1 7 5 2 , ( 6 1 7 ) 4 8 5 - 4 6 7 7 .A l s o p l a n n e d f o t h f a i r i " S p e c i a l S a l u t e T C o m m o d o r e " b a n q u e t o F r i d a y ,N o v e m b e r 1 3 A D u n c a n , P r e s i d e n t o C o m m o d o r e , a n J i B u t t e r f i e l d ,C o m m o d o r e ' s m o s t f a m o u s g u r u , w i l l b t h e g u e s t s o h o n o u r . C o s t f o t h b a n q u e t i $ 1 8 . 9 5 . A d v a n c e r e g i s t r a t i o n i r e q u i r e d ; m a k e c h e q u e p a y a b l e t S P r o d u c t i o n s a n s e n d , a l o n g w i t h n a m e a d d r e s s a n d p h o n e n u m b e r , t o S a E v a n g e l o u s , 7 W e s t S t r e e t , C l i n t o n , M 0 1 5 1 0

T h 6 E m u l a t o r f o A m i g aR e a d y S o f t I n c . a n n o u n c e s ' T h e 6 4 E m u l a t o r " f o t h A m i g a . S i m p l y i n s e r t t h E m u l a t o r d i s k i n t o y o u r A m i g a a n y o u r A m i g a b e c o m e s C o m m o d o r e 6 4 T h 6 E m u l a t o r h a f u l l s u p p o r t f o a l A m i g a d i s k d r i v e s a n p r i n t e r s , a n w i t h a o p t i o n a l i n t e r f a c e c a b l e , a n C o m m o d o r e 6 d i s k d r i v e c a b c o n n e c t e d

d i r e c t l y t o y o u r A m i g a t h r o u g h t h p a r a l l e l p r i n t e r p o r t . A l v i d e o m o d e s ,i n c l u d i n g s p r i t e s a n r a s t e r i n t e r r u p t s ( u s e d i m o s t g a m e s ) , a s w e l l a s o u n d a n dc o l o u r a r f u l l y s u p p o r t e d . m o n o c h r o m e o p t i o n i i n c l u d e d f o a d d i t i o n a ls p e e d w h e n c o l o u r i n o r e q u i r e d . W r i t t e n f u l l y i 6 8 0 0 0 m a c h i n e c o d e f o m a x i m u m s p e e d , T h 6 E m u l a t o r t a k e s f u l l a d v a n t a g e o t h A m i g a ' s h a r d w a r et g i v e e x c e l l e n t 6 c o m p a t i b i l i t y . P r i c e i $ 3 9 . 9 5 U ( $ 4 9 . 9 5 C d n . ) , $ 5 9 . 9 5 U ( $ 7 9 . 9 5 C d n . ) w i t h i n t e r f a c e c a b l e . F o f u r t h e r i n f o r m a t i o n c o n t a c t : R e a d y S o f tI n c . , P . O . B o 1 2 2 2 , L e w i s t o n , N Y 1 4 0 9 2 , ( 4 1 6 ) 7 3 1 - 1 4 7 2 .

C o m m o d o r e C r e a t i n g P r o d u c t L i s tT h f o l l o w i n g i f r o m l e t t e r f r o m P e t e r B a c z o r , C o m m o d o r e C u s t o m e r r e l a t i o n sm a n a g e r , t m a n u f a c t u r e r s o p r o d u c t s f o C o m m o d o r e m a c h i n e s :

I . a e f f o r t t b e t t e r s u p p o r t o u e n d - u s e r s a c r e a t i n g s p e c i f i c a t i o nl i b r a r y o p r o d u c t s a v a i l a b l e f o u s w i t h o u c o m p u t e r s , t h 6 4 - C , C - 1 2 8 ,A m i g a 5 0 0 , A m i g a W O O , A m i g a 2 0 0 0 , a n d P C - 1 0 .

w o u l d b g r e a t l y a p p r e c i a t i v e i y o w o u l d s e n d m s p e c i f i c a t i o n s h e e t s f o t h p r o d u c t s c u r r e n t l y a v a i l a b l e t h a t w i l l o p e r a t e w i t h a n o t h a b o v e m e n -t i o n e d m a c h i n e s . P l e a s e s e n d t h i s i n f o r m a t i o n t t h e f o l l o w i n g a d d r e s s :

C o m m o d o r e B u s i n e s s M a c h i n e sC u s t o m e r R e l a t i o n s , D e p t . S U 8 71 2 0 0 W i l s o n D r i v eW e s t C h e s t e r , P 1 9 3 8 0

T h a n k y o u .R e g a r d s ,P e t e r J B a c z o rM a n a g e r , C u s t o m e r R e l a t i o n s

N e U E D I T R e l e a s eU e d i t V 2 . 3 i n o a v a i l a b l e . U e d i t i S h a r e w a r e t e x t e d i t o r f o t h A m i g a , n o t e df o e d i t i n g p o w e r ( u t 1 0 f i l e s a o n c e ) a n e x t r e m e v e r s a t i l i t y . I u s e s m o u s ec u r s o r - p l a c e m e n t a n m o u s e - s c r o l l i n g , f u n c t i o n k e y s , m e n u s , g a d g e t s , a n d o nl i n e h e l p f a c i l i t y . A l l o f t h e s e a n v i r t u a l l y e v e r y t h i n g a b o u t U e d i t c a b c u s t o m i z e d w h i l e y o a r u s i n g i t U t 1 6 8 0 u s e r - d e f i n e d m e n u s e l e c t i o n s a n h u n d r e d s o f k e y , m o u s e , a n g a d g e t c o m m a n d s c a n b e o n - l i n e .V 2 . 3 e x p a n d s U e d i t f r o m b e i n g r e m a r k a b l e A m i g a t e x t e d i t o r t o b e i n g ap o w e r f u l a n f l e x i b l e w o r d p r o c e s s o r a w e l l . V 2 . 3 h a T e a c h M o d e w h i c ht e a c h e s b e g i n n e r s w h a t e a c h i n p u t d o e s a n m a n y n e f e a t u r e s , s u c h a s t a br u l e r s , e d i t - w h i l e - y o u - p r i n t , d o c u m e n t / n o n d o c u m e n t m o d e , a n m a n y m o r e .U e d i t c a b c o n f i g u r e d ( b a e x p e r i e n c e d u s e r ) t e m u l a t e p o p u l a r w o r dp r o c e s s o r s . I h a s m o s t o t h s a m e c a p a b i l i t i e s t h e y d p l u s f a g r e a t e r p o w e r ,c a p a c i t y , v e r s a t i l i t y , a n a b i l i t y t a u t o m a t e t e d i o u s e d i t i n g c h o r e s . U e d i t d o e sn o h a v e b u i l t - i n s p e l l - c h e c k e r a n d o e s n ' t s h o w b o l d f a c e a n i t a l i c s o t h s c r e e n , b u i w o r k s w i t h a n n o n p r o p o r t i o n a l f o n t a n w i t h a l k n o w n h a r d w a r ea n s y s t e m m o d i f i c a t i o n s t y o u r A m i g a .Y o c a o r d e r U e d i t f r o m R i c k S t i l e s , P . O . B o 6 6 6 , W a s h i n g t o n , I N 4 7 5 0 1 . U e d i tc o s t s $ 4 ( U S ) a n p u r c h a s i n g i m a k e s y o r e g i s t e r e d u s e r . Y o r e c e i v e s e r i a ln u m b e r , $ 1 5 c o m m i s s i o n s w h e n o t h e r s r e g i s t e r f r o m y o u r s e r i a l i z e d c o p y o U e d i t , a S h a r e w a r e d i s k e t t e w h i c h y o u c a f r e e l y d i s t r i b u t e , p r i v a t e d i s k e t t ew i t h f u l l d o c u m e n t a t i o n o i t n o t i f i c a t i o n o f u p g r a d e s , c u s t o m u s e r - w r i t t e nc o n f i g u r a t i o n s s u c h a U S t a r ( w r i t t e n b K u r t W e s s e l s ) w h i c h e m u l a t e s W o r d -S t a r ( t m ) a n S c r i b b l e ! ( t m ) , p o w e r f u l d i r e c t o r y u t i l i t y a n c o m p u t e r p r o g r a m m i n gc o n f i g u r a t i o n s , n u m b e r o u t i l i t y p r o g r a m s , a n a 3 0 - d a y s a t i s f a c t i o n g u a r a nt e e . U e d i t k e e p s i m p r o v i n g b e c a u s e o g o o d i d e a s f r o m i t h u n d r e d s o u s e r s . A

r e g i s t e r e d u s e r y o c a s u b s c r i b e t t h Q u a r t e r l y N e w s l e t t e r , e a r n c o m m i ss i o n s f o f i n d i n g n e u s e r s , p u r c h a s e u p g r a d e s a l o c o s t , a n c o n t r i b u t e y o u rc u s t o m c o n f i g u r a t i o n s a n d g o o d i d e a s t k e e p t h i s p r o g r a m i m p r o v i n g .

C o m s p e c H a r d D r i v e f o t h A m i g a 1 O O OC o m s p e c c o m m u n i c a t i o n s h a j u s t a n n o u n c e d t h a v a i l a b i l i t y o f t h e i r n e h i g h -p e r f o r m a n c e h a r d d r i v e f o t h A m i g a . F e a t u r e s :A u t o - b o o t i n g : i a u t o - b o o t m o d e , K i c k s t a r t a n d W o r k b e n c h a r l o a d e d f r o mt h h a r d d i s k i m m e d i a t e l y a f t e r p o w e r i n g u p n o n e e d t k e e p s w a p p i n g d i s k s ,e v e n a f t e r G u r u M e d i t a t i o n . N o t h e r h a r d d i s k f o t h A m i g a h a t h i s f e a t u r e .A b l e t h a n d l e m e d i a d e f e c t s : M e d i a d e f e c t s a r h a n d l e d t r a n s p a r e n t l y t t h u s e r , u n l i k e o t h e r h a r d d r i v e s t h a t f o r c e y o t r e f o r m a t t h e d i s k .

T h T r a n s a c t o r 7 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 81: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 81/84

M U S I CI N C .

5 3 N W o l f R d . , W h e e l i n g I 6 0 0 9 0H o u r s P h o n e ( 3 1 2 ) 5 2 0 - 2 5 4 0M o n . - T h u r s . 1 2 : 3 0 - 8 : 3 0 , S a t . 9 : 0 0 - 4 : 0 0

w a n t t b s h o p !

H a c k e d P a r t sS K £ 5a r a b l e f o s o m e 8 0 0 0 , _ 9 0 0 0 a n * * m o d * /

O n o a K i n d • S u r p l u s • M o n t h l y S p e c i a l • C l o s e o u t sL i m i t e d q u a n t i t i e s t o s t o c k o n h a n d

1 5 0 c p S I E E E $ 1 7 9 . 9 51 0 0 c p s r e h a b $ 9 9 . 0 0

b l e $ 2 4 . 9 5l e $ 2 9 . 9 5i t c h $ 1 9 9 . 0 0

$ 1 0 5 . 0 0

A v a t e x 1 2 0 0 m o d e m $ 9 4 . 9 59 0 9 0 7 . m e r e h a b $ 4 9 5 . 0 06 4 k r a m e x p 8 0 3 2 $ 1 2 5 . 0 0M o n o c h r o m e M o n i t o r . . . . . . . . . $ 7 9 . 9 5S m i t h C o r o n a D M - 2 0 0 $ 1 7 9 . 9 5

N W M ' sI N V E N T O R Y C O N T R O L

S Y S T E M *l o a d s p r o g r a m m o d u l e s i l e s s t h a n s e c o n d s( s u p e r b a s e 2 t m a i n m e n u s i s e c o n d s o l e s s

■ ■ ■ ■ ■ o s c r e e n p o p - u p c a l c u l a t o r i t r a n s a c t i o n■ ■ ■ ■ ■ m o d u l e s

m o s t d a t a c e n t e r e d f u n c t i o n u s t h c a l c u l a t o rk e y p a dv e r s a t i l e r e p o r t f e a t u r e s a l l o w f o w a y s t p r i n tt h s a m e r e p o r t . U s e r s e l e c t s t h f a s t e s t m e t h o db u i l t i s o p h i s t i c a t e d e x p o r t p r o g r a m a l l o w s f o c o m p l e t e p a c k i n g o t h d a t a b a s et y p e a h e a d f e a t u r e a l l o w e dy o c a d i s p l a y r e p o r t s o s c r e e na c c e s s t s u p e r b a s e m e n u f o u s e r d e v e l o p e da p p l i c a t i o n s

V e r s i o n 8 0 5 0 $ 4 9 . 9 5V e r s i o n 2 8 0 5 0 $ 4 9 . 9 5

C - 1 2 8 V e r s i o n 1 1 5 7 1 $ 4 9 . 9 5u s o s u p e r b a s e B - 1 2 8 V e r s i o n 1 & 8 0 5 0 $ 5 4 . 9 5

B - 1 2 8$ 1 4 5 U . S .

1 2 8 k u s e r i n s t a l l a b l ee x p a n s i o n !

p r i c e o f o n l y $ 1 2 5 .

S O F T W A R E F O R T H E B - 1 2 8 ! ! !

$ 1 9 . 9 5$ 1 9 . 9 5

I n t e g r a t e dS u p e r s c r i p t $ 4 9 . 9 5

R e s u l t $ 8 9 . 9 5R e s u l t $ 8 9 . 9 5D i s k D o 2 4 . 9 5

e r o f C a l c R e s u l t ( B o o k ) $ 1 4 . 9 5

C . A . B . S . A c c o u n t i n gG e n e r a l L e d g e r $ 9 . 9 5A c c o u n t s R e c e i v a b l e 9 . 9 5A c c o u n t s P a y a b l e 9 . 9 5O r d e r E n t r y $ 9 . 9 5P a y r o l l 9 . 9 5

B u a l f o o n l y $ 2 4 . 9 5S u p e r b a s e : T h e B o o k $ 1 4 . 9 5A p p l i e d C a l c R e s u l t ( B o o k ) $ 1 4 . 9 5

C o m m o d o r e ' sS u p e r p e t 9 0 0 0o n l y $ 2 7 9 9 5w h i l e s u p p l i e s l a s t

W i t h F i v eI n t e r p r e t i v eL a n g u a g e s :C o b o lP a s c a lF o r t r a nA p

R u n s 8 0 3 2 s o f t w a r e .G r e a t f o s c h o o l s a n s t u d e n t s

6 4 M e m o r y E x p a n s i o n f o 8 0 3 2 o n l y $ 1 2 5u p g r a d e s y o u r 8 0 3 2 t a 8 0 9 6 .

C O M M O D O R E8 0 0 0 - 9 0 0 0 S O F T W A R E M I S C .

9 0 0 0 S u p e r p e t $ 2 7 9 . 9 56 4 e x f o 8 0 3 2 $ 1 2 5P e S w i t c h $ 1 9 9P e D a u g h t e r s $ 1 0 5B P I G e n e r a l L e d g e r $ 2 5B P I A c c t s P a y a b l e $ 2 B P J o C o s t $ 2 5B P I A c c t s R e c e i v a b l e $ 2 5B P I n v e n t o r y $ 2

S u p e r s c r i p t 8 0 3 2 $ 7 9S u p e r b a s e 8 0 9 6 $ 7 9O Z D a t a b a s e $ 2 5L e g a l T i m e A c $ 2 D o J o n e s P r o g r a m $ 2 I n f o D e s i g n s 8 0 3 2

A c c o u n t i n g S y s t e m $ 5 S u p e r o f f i c e 8 0 9 6 $ 1 4 9C a l c R e s u l t 8 0 3 2

S F 1 0 0 1 M e g a b y t eD r i v e d o u b l e s i d e d 8 2 5 0f o r m a t I E E E i n t e r f a c eP R I C E D A $ 1 6 9 . 9 5 U

S F D - 1 0 0 1 i t h d r i v e t h a t y o s h o u l d c o n s i d e r w h e n y o n e e d l a r g e a m o u n t s o d a t a s t o r a g e . I h o l d so v e r m e g a b y t e o d a t a o i t s i n g l e f l o p p y d r i v e . F a s t I E E E a c c e s s f o y o u r C - 6 4 o r C - 1 2 8 . ( C - 6 4 a n dC - 1 2 8 n e e d a n E E i n t e r f a c e . ) W h s e t t l e f o s l o w e r d r i v e s w i t h l e s s s t o r a g e c a p a c i t y . T h i s d r i v e s t o r e ss u b s t a n t i a l l y m o r e p r o g r a m s a n d d a t a . T h i n k h o w m u c h m o n e y y o u c a n s a v e o d i s k p u r c h a s e s . I f a c t , i s t o r e s a l m o s t 7 t i m e s m o r e i n f o r m a t i o n t h a n y o u r s t a n d a r d d r i v e . B u l l e t i n b o a r d o w n e r s l o v et h e m . A n w h a t a n i n t r o d u c t o r y p r i c e ! A t $ 1 6 9 . 9 5 t h e s e d r i v e s w i l l s e l l f a s t , s d o n ' t w a i t . T h i s d r i v e h a t h i d e n t i c a l f o r m a t o C B 8 2 5 0 d r i v e , o n o C o m m o d o r e s m o s t d u r a b l e f l o p p y d r i v e s .M O D E LD R I V E SH E A D S / D R I V E

S F D - 1 0 0 1

S T O R A G E C A P A C I T Y ( P e r U n i t )F o r m a t t e dM A X I M U M ( E a c h D r i v e )S e q u e n t i a l F i l eR e l a t i v e F i l eD i s k S y s t e mB u f f e r R A ( B y t e s )

1 . 0 6 M 1 . 0 5 M 1 . 0 4 M

4 D I S K F O R M A T S ( E a c h D r i v e )C y l i n d e r s ( T r a c k s ) ( 7 7 )

S e c t o r / C y l i n d e rS e c t o r / T r a c kB y t e s / S e c t o rF r e e B l o c k sT R A N S F E R R A T E S ( B y t e s / S e c )I n t e r n a lI E E E - 4 8 8 B u A C C E S S T I M E ( M i l l i - s e c o n d s )T r a c k - t o - t r a c kA v e r a g e t r a c kA v e r a g e L a t e n c yS p e e d ( R P M )

2 3 - 2 92 5

4 1 3 3

4 K b 1 . K

1 0 3 0

O R D E R N O W H I L E S T O C K L A S T S !S e n d o c a l l y o u r o r d e r s t o N o r t h w e s t M u s i c C e n t e r , I n c . 5 3 N W o l f R d . , W h e e l i n g I 6 0 0 9 0 .3 1 2 - 5 2 0 - 2 5 4 0 F o r p r e p a i d o r d e r s a d 1 6 . 9 0 f o r 8 0 2 3 p , $ 2 S u p e r p e t , 9 . 9 5 S F 1 0 0 1 . 1 0 . 9 5 B - 1 2 8 . 9 . 9 54 0 2 3 p , 1 5 . 9 5 9 0 9 0 a n d 4 . 9 5 6 4 m e m o r y e x p a n s i o n . F o r s o f t w a r e a d $ 3 . 0 0 f o f i r s t a n $ 1 . 5 0 f o e a c ha d d i t i o n a l b o o k o p r o g r a m . C a n a d i a n s h i p p i n g c h a r g e s a r d o u b l e U . S . I n t e r n a t i o n a l o r d e r s , c a l l f o s h i p p i n g . F o C . O . D . o r d e r s a d 1 . 9 0 p e b o s h i p p e d . A l o r d e r s m u s t b e p a i d i U . S . f u n d s . I n c l u d ep h o n e n u m b e r s w i t h a r e a c o d e s . D n o u s P . O . B o x , o n l y U P s h i p p a b l e a d d r e s s e s . w e e k h o l dw i l l b i m p o s e d o a l o r d e r s p l a c e d w i t h a p e r s o n a l o r b u s i n e s s c h e c k . C . O . D . o r d e r s s h i p p e d i U . S .o n l y a n c a s h o d e l i v e r y , n c h e c k s . 3 d a w a r r a n t y o a l p r o d u c t s f r o m N W M , I n c . N m a n u f a c t u r e rw a r r a n t y . N W r e s e r v e s t h e r i g h t t l i m i t q u a n t i t i e s t o s t o c k o n h a n d a n d a d j u s t p r i c e s w i t h o u t n o t i c e !

A l p r i c e s q u o t e d i U d o l l a r s .

Page 82: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 82/84

I n t e l l i g e n t S C S I C o n t r o l l e r : A l l o w s f o h i g h - s p e e d m u l t i t a s k i n g , l e a v i n g t h eA m i g a f r e e t o d o t h e r t a s k s w h i l e t h d r i v e s e e k s a n r e t r i e v e s d a t a ; o t h e r h a r dd r i v e s w i l l n o e v e n a l l o w y o t e n t e r k e y s t r o k e s w h i l e t h e s e o p e r a t i o n s a r o c c u r r i n g . T h S C S I c o n t r o l l e r a l s o a l l o w s f o m a x i m u m e x p a n d a b i l i t y , a l l o w i n gt h u s e r t a d a d d i t i o n a l h a r d d r i v e s , t a p e s t r e a m e r s , e t c . T h S C S I c o n t r o l l e ra l s o c o n t a i n s b a t t e r y b a c k e d - u p c l o c k , w h i c h a u t o m a t i c a l l y s e t s t h s y s t e mt i m e o p o w e r - u p .H a r d D r i v e C h a s s i s : A l l o w s e n o u g h r o o m t a d h a r d d r i v e s f r o m 1 t 3 0 m e g a b y t e s , o s p a c e t a d s e c o n d h a l f - h e i g h t h a r d d r i v e o r t a p e s t r e a m e r . I c o m e s w i t h p o w e r s u p p l y t h a t i c a p a b l e o r u n n i n g o v o l t a g e s f r o m 1 0 0 V A t 2 4 0 V A C , a 5 0 H Z o 6 0 H Z w i t h o u t s e t t i n g a n s w i t c h e s o r j u m p e r s . T h c h a s s i s i e q u i p p e d w i t h l o n o i s e f a t p r o t e c t f r o m o v e r h e a t i n g a n p r o v i d eg r e a t e r r e l i a b i l i t y .T h d r i v e c a b o r d e r e d w i t h o n o t w o 2 0 o 4 0 m e g a b y t e d r i v e s i t h c h a s s i s ; l a r g e r s i z e s a r a l s o a v a i l a b l e .F o p r i c i n g a n o t h e r i n f o r m a t i o n , c o n t a c t : C o m s p e c C o m m u n i c a t i o n s I n c . , 1 5 B r i d g e l a n d A v e , U n i t 5 T o r o n t o , O n t . M 6 2 Y 6 , P h o n e : ( 4 1 6 ) 7 8 5 - 3 5 5 5 F a x :( 4 1 6 ) 7 8 5 - 3 6 6 8 .

R O M D I S K w i t h H Y P E R B O O T f o t h C 6 E p i m e t h e u s C o r p o r a t i o n h a s i n t r o d u c e d i t 1 2 8 K - b y t e R O M D I S K w i t h H Y P E RB O O T f o t h C 6 a n C 1 2 8 i 6 m o d e . I c o m b i n e s a l t h h a r d w a r e a n s o f t w a r e y o n e e d t c r e a t e l i b r a r y o f u t 1 5 o y o u r f a v o u r i t e p r o g r a m s o a E P R O M b a n k a t t a c h e d t t h e u s e r p o r t . T r a n s f e r r i n g p r o g r a m f i l e s f r o m1 5 4 1 d i s k d r i v e t t h R O M D I S K i m a d e s i m p l e w i t h a m e n u - d r i v e n p r o g r a m .T h i s s o f t w a r e , c a l l e d H Y P E R B O O T , i p r o v i d e d o a 8 c a r t r i d g e . O n c ep r o g r a m s a r e t r a n s f e r r e d f r o m f l o p p y d i s k t t h R O M D I S K , t h e y l o a d a r a t e o 1 6 , 0 0 0 b y t e s p e s e c o n d . T h R O M D I S K c o m e s i f i n i s h e d c a s e w i t h a l 1 2 8 Kb y t e s o E P R O M i n s t a l l e d . I i e r a s a b l e u s i n g u l t r a v i o l e t l i g h t a n c a b r e p r o g r a m m e d t h o u s a n d s o f t i m e s . A l s o a v a i l a b l e a r t w o - w a y s w i t c h e s t h a t a l l o wb o t h a m o d e m a n t h R O M D I S K t o c c u p y t h u s e r p o r t ( $ 3 9 U S a n 3 - f o o te x t e n s i o n r i b b o n c a b l e t a l l o w r e m o t e p l a c e m e n t o t h R O M D I S K o r m o d e m( $ 2 4 . 9 5 U S ) . R O M D I S K w i t h H Y P E R B O O T s e l l s f o $ 1 7 9 . 0 0 ( U S ) .C o n t a c t : E p i m e t h e u s C o r p o r a t i o n , P . O . B o 1 7 1 , C l e a r C r e e k , I n d i a n a 4 7 4 2 6( 8 1 2 ) 3 3 6 - 4 5 0 8 .

M I D I I n t e r f a c e f o C 6 4 / 1 2 8 a n d 6 4 A u d i o D i g i t a l P r o c e s s i n g S y s t e m s i a n n o u n c i n g t h r e l e a s e o f o M l D I 6 4 a i n t e l l i g e n t M I D I i n t e r f a c e f o t h C 6 4 / 1 2 8 a n 6 4 c o m p u t e r s a n a l M I D I -e q u i p p e d i n s t r u m e n t s a n d e v i c e s .M I D I 6 i t h o n l y a l l - C a n a d i a n M I D I i n t e r f a c e , a n i n t r o d u c e s m a n y i n n o v at i o n s , s u c h a 1 6 a u t o - b o o t b a n k - s w i t c h e d E P R O M c o n t a i n i n g : a e x t e n s i v eM I D I s u p p l e m e n t t B A S I C f o e a s y c u s t o m M I D I p r o g r a m m i n g ; a r e a l - t i m e 4 t r a c k s e q u e n c e r ; M I D I - d a t a m o n i t o r f o h e x / b i n a r y / d e c i m a l r e a l - t i m e d a t ad i s p l a y ; a i n t e r f a c e / c a b l e a u t o - t e s t p r o g r a m . A l p r o g r a m s a r e a u t o m a t i c a l l ya v a i l a b l e o p o w e r - u p , a n c a b s w i t c h e d o u t r u o t h e r s o f t w a r e .T h M I D I 6 p a c k a g e i n c l u d e s : M I D I i n t e r f a c e w i t h E P R O M i n s t a l l e d , t w M I D Ic a b l e s , f u l l d o c u m e n t a t i o n o d i s k , a n d M I D I B A S I C p r o g r a m e x a m p l e s .W i t h s u g g e s t e d C a n a d i a n r e t a i l p r i c e o f $ 1 9 9 . 9 5 , A D P S i t a r g e t i n g M I D I 6 a m u s i c i a n s , h o m e h o b b y i s t s , s t u d e n t s , r e p a i r t e c h n i c i a n s , a n s m a l l r e c o r d i n gs t u d i o s . T h p a c k a g e i e s p e c i a l l y w e l l - s u i t e d f o p r o g r a m m i n g a n d M I D It e a c h i n g i t h c l a s s r o o m , a n f i r s t - t i m e M I D I u s e r s . D e a l e r a n d i s t r i b u t o ri n q u i r i e s a r i n v i t e d . C o n t a c t : A D P S , c / P h i l H o n s i n g e r , 8 6 F o x h u n t R o a d ,W a t e r l o o , O n t a r i o , N 2 2 Z 6 , ( 5 1 9 ) 8 8 6 - 6 3 6 1 .

G E O S U p g r a d e f o t h C 1 2 8B e r k e l e y S o f t w o r k s i o f f e r i n g G E O S f o t h C 1 2 8 t r e g i s t e r e d C 6 G E O So w n e r s f o j u s t $ 2 2 . 0 0 ( U S ) p l u s $ 2 . 4 0 s h i p p i n g / h a n d l i n g . T h 1 2 v e r s i o n o G E O S r u n s a M H Z , s u p p o r t s 8 0 - c o l u m n m o d e , a n d u s e s t h o p t i o n a l 1 7 5 0R A e x p a n s i o n u n i t a R A M - d i s k . C o n t a c t : B e r k e l e y S o f t w o r k s , 2 1 5 0 S h a t t u c kA v e n u e , B e r k e l e y , C a l i f o r n i a , 9 4 7 0 4 , ( 4 1 5 ) 6 4 4 - 0 8 8 3 .

V i d e o D i g i t i z e r f o t h C 6 E y e - S c a n f r o m D i g i t a l E n g i n e e r i n g i a v i d e o d i g i t i z e r f o r t h C o m m o d o r e 6 4 6 C S X 6 4 a n C 1 2 8 . E y e - S c a n ' s c a r t r i d g e p l u g s i n t o t h e u s e r p o r t , a n a c c e p t s

c o m p o s i t e v i d e o s i g n a l v i a s t a n d a r d R C j a c k . C o n v e r s i o n t i m e i a p p r o x im a t e l y s i s e c o n d s p e g r a y l e v e l . E y e - S c a n ' s s o f t w a r e u s e s p u l l - d o w n m e n u sa n a l l o w s b l a c k a n w h i t e i m a g i n g , u t o e i g h t g r a y l e v e l s , i m a g e i n v e r s i o n , a n 1 5 2 5 p r i n t e r s u p p o r t . A l s o i n c l u d e d i p r o g r a m m e r ' s u t i l i t y p a c k a g e t h a t a l l o w sp r o g r a m m e r s t u s t h i m a g i n g c a p t u r i n g a l g o r i t h m s i n t h e i r o w p r o g r a m s .P o s s i b l e a p p l i c a t i o n s i n c l u d e a n i m a t i o n , s e c u r i t y , a u t o m a t e d p r o c e s s c o n t r o l ,p a t t e r n a n a l y s i s , r o b o t v i s i o n , a n t e x t r e c o g n i t i o n . C o n t a c t : D i g i t a l E n g i n e e r i n ga n D e s i g n , 2 7 1 8 S . W . K e l l y S u i t e C 1 6 5 , P o r t l a n d , O r e g o n , 9 7 2 0 1 , ( 5 0 3 ) 2 4 5 -1 5 0 3 .

C 1 2 8 C P / M K i tI N C A a n n o u n c e s t h r e l e a s e o C P / M k i f o t h C o m m o d o r e 1 2 8 . T h k i c o n s i s t s o a 3 9 - p a g e b o o k l e t a n d t w o d i s k s o C P / M p u b l i c d o m a i n s o f t w a r ew h i c h : e x p l a i n s t h e u s o s o m e o t h p r o g r a m s o n C o m m o d o r e ' s s y s t e m d i s k ;d e m o n s t r a t e s s o m e o t h m a i n f e a t u r e s o C o m m o d o r e ' s C P / M ; s h o w s h o t g e s t a r t e d u s i n g m o d e m t o b t a i n m o r e C P / M p r o g r a m s a n d i n f o r m a t i o n .T h " C P / M k i f o t h C o m m o d o r e 1 2 8 " l i s t s f o $ 2 9 . 9 5 ( U S ) . C o n t a c t : I N C A ,1 2 4 9 D o w n i n g S t P . O . B o 7 8 9 , I m p e r i a l B e a c h , C 9 2 0 3 2 .

A e g i s R e l e a s e s " A r t P a k s " f o t h A m i g aA e g i s D e v e l o p m e n t , I n c . h a r e l e a s e d " A r t P a k , V o l u m e 1 f o t h A m i g a ,c o n s i s t i n g o f a r t d o n e b y A e g i s ' p r o f e s s i o n a l a r t e a m . V o l u m e i n c l u d e sp h o t o g r a p h - q u a l i t y a r t w o r k o b u i l d i n g s f o u s a s b a c k d r o p s , p i e c e s o e e a n i m a t i o n s f o c r e a t i n g o n e ' s o w w a l k i n g , m o v i n g a n i m a t i o n s . S i n c e A e g i sA n i m a t o r c a d b o t h m e t a m o r p h i c a n d e e a n i m a t i o n , t h e s e i m a g e s c a n b eu s e d w i t h b o t h s t y l e s a d i f f e r e n t t h i n g s .A r P a k s c a n b u s e d w i t h A e g i s I m a g e s p r o f e s s i o n a l p a i n t p r o g r a m , A e g i sA n i m a t o r , a n A e g i s D r a w , t h e n t r y - l e v e l C A p r o g r a m f o t h A m i g a . A n p r o g r a m t h a t c a r e a d I F F f o r m a t g r a p h i c s f i l e s w i l l b a b l e t t a k e a d v a n t a g e o t h e s e i m a g e s . A r P a k s w i l l s e l l f o $ 3 4 . 9 5 ( U S ) a t r e t a i l o u t l e t s f o A m i g as o f t w a r e .

G e n e a l o g y P r o g r a m f o t h 8 0 3 2B y t e w a r e n o h a v e r s i o n o " t h e G e n e a l o g i s t " f o t h P E 8 0 3 2 , f o l l o w i n gt h e i r v e r s i o n s f o t h 6 4 1 2 a n P l u s / 4 . T h i s p r o g r a m v a s t l y e a s e s t h G e n e a l o g i s t ' s r e c o r d k e e p i n g t a s k s , a n i a v a i l a b l e i 4 0 4 0 o 8 0 5 0 f o r m a t . A A m i g a v e r s i o n i u n d e r d e v e l o p m e n t . S e n d S A S E t t h e f o l l o w i n g a d d r e s s f o i n f o r m a t i o n , s a m p l e s h e e t s , a n p r i c e s f o t h v a r i o u s p r o g r a m s ( p r i c e s s t a r t a tv e r y r e a s o n a b l e $ 9 . 9 5 U S ) . M a p l e C i t y S o f t w a r e , 9 0 6 W e s t 6 t A v e . , M o n m o u t h ,I L 6 1 4 6 2 .

8 0 5 1 C r o s s A s s e m b l e r f o t h C 6 a n C 1 2 8T h Z i p p - C o d e - 5 1 i a a s s e m b l e r f o t h 8 0 5 1 p r o c e s s o r , u s e d i s m a r tp e r i p h e r a l s , r o b o t i c s a n o t h e r a p p l i c a t i o n s . T h e d i t o r u s e d i t h s t a n d a r dB A S I C e d i t o r o f t h 6 o 1 2 8 . T h e r e a r t w v e r s i o n s o Z i p p - C o d e - 5 1 , o p t i m i z e df o r e i t h e r t h 6 o r t h e 1 2 8 . T h p a c k a g e a l s o i n c l u d e s s y m b o l c r o s s r e f e r e n c eu t i l i t y , d i s a s s e m b l e r , a n b i n a r y t s o u r c e f i l e c o n v e r t e r . P r i c e i $ 4 9 . 9 5( i n c l u d i n g s h i p p i n g ) ; s p e c i f y C 6 o C 1 2 8 w h e n o r d e r i n g . O r d e r f r o m : H u g h e sA s s o c i a t e s S o f t w a r e , 4 5 3 4 1 H a r m o n y L a n e , B e l l e v i l l e , M I 4 8 1 1 1 , ( 3 1 3 ) 6 9 9 -1 9 3 1 .

L a t e - B R K i n g N e w s : O x x i C l a i m s B e n c h m a r k M T h i s j u s t i n a t h e y s a y . L a s t i s s u e w r a a p r e s s r e l e a s e f o t h B e n c h m a r kM o d u l a - 2 d e v e l o p m e n t p a c k a g e . T h s o u r c e f o t h s o f t w a r e w a g i v e n a O x x iI n c . o f F u l l e r t o n , C a l i f o r n i a , t h c o m p a n y f r o m w h o m w o b t a i n e d t h p r r e l e a s e c o p y b r i e f l y r e v i e w e d i n t h i s T r a n s a c t o r ( s e e p a g e 5 9 ) . f e w e e k s b a c k ,w w e r e i n f o r m e d b L e o n F r e n k e l , a u t h o r o B e n c h m a r k , t h a t h h a s e v e r e dr e l a t i o n s w i t h O x x i a n d w o u l d h e n c e f o r t h b e m a r k e t i n g h i M o d u l a - 2 t h r o u g hh i o w n e w l y - f o r m e d c o m p a n y , A v a n t - G a r d e S o f t w a r e . A c c o r d i n g l y , i i A v a n t -G a r d e ' s n a m e ( a n d p r i c i n g ) t h a t a p p e a r s w i t h t h e r e v i e w . J u s t a w a r a b o u t t g t p r e s s , h o w e v e r , w h a v e b e e n t o l d b J o h n H o u s t o n o O x x i t h a t h i c o m p a n y i d i s p u t i n g F r e n k e l ' s c l a i m t h a v e t i t l e t B e n c h m a r k . W e l l , w a r e n ' tl a w y e r s , a n w d o n ' t k n o w w h i c h w a t h i s p a r t i c u l a r c o o k i e w i l l c r u m b l e . W c a t e l l y o t h a t B e n c h m a r k i ( a t h i s i n s t a n t ) a v a i l a b l e f r o m A v a n t - G a r d e o n l y ,t h a t t h e q u e s t i o n o o w n e r s h i p w i l l p r o b a b l y b r e s o l v e d o n w a o a n o t h e r b t h t i m e w p r i n t o u n e x t i s s u e , a n t h a t w h a t e v e r h a p p e n s t h p r o d u c t d o e se x i s t a n w i l l b s u p p o r t e d . B y s o m e o n e .

T h T r a n s a c t o r 8 J a n u a r y 1 9 8 8 : V o l u m e 8 I s s u e O

Page 83: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 83/84

T H T I M E S A V E R

T y p e i l o o T r a n s a c t o r p r o g r a m s ?D o e s t h a b o v e t i m e a n a p p e a r a n c e o f t h e s k l o o k f a m i l i a r ?

W i t h T h T r a n s a c t o r D i s k , a n p r o g r a m i j u s t L O A D a w a y !

O n l y $ 8 . 9 5 U S $ 9 . 9 5 C d n . P e I s s u e6 D i s k S u b s c r i p t i o n ( o n e y e a r )

J u s t $ 4 5 . 0 0 U S $ 5 5 . 0 0 C d n .( s e e o r d e r f o r m a c e n t e r f o l d )

N o A m i g a O w n e r s C a S a v e T i m e T o o !T r a n s a c t o r A m i g a D i s k # 1 $ 1 2 . 9 5 U S $ 1 4 . 9 5 C d n .

A l t h A m i g a p r o g r a m s f r o m t h m a g a z i n e , w i t h c o m p l e t ed o c u m e n t a t i o n o d i s k , p l u s o u p i c k o t h p u b l i c d o m a i n !

Page 84: The Transactor V8 04 1988 Jan

8/7/2019 The Transactor V8 04 1988 Jan

http://slidepdf.com/reader/full/the-transactor-v8-04-1988-jan 84/84

T H W O R L D O C O M M O D O R E

B B B B B B B B B B B B B B B B B B B B B B B I I B B B B B B B BB B B B B B B B I

■ ■ ■ B |I B B B B IB B B B II B B B B II B B B B II B B B B II B B B B II B B B B I

J J - > n n t e n t- ^ - y M n r e s e n t a n % u s i n e