Compute's Kids and the Commodore 64 Revised

306

Transcript of Compute's Kids and the Commodore 64 Revised

Page 1: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 1/306

Page 2: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 2/306

Page 3: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 3/306

C O M P U T E D

K i d sa n dt h e

C o m m o d o r6 4

E d w a r dH .C a r l s o n

I l l u s t r a t e db yP a u lD .T r a p

O n eo f t h eA B CP u b l i s h i n gC o m p a n i e s

G r e e n s b o r o ,N o r t hC a r o l i n a

Page 4: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 4/306

C o p y r i g h t1 9 8 4 ,C O M P U T E !P u b l i c a t i o n s ,I n c .

A l lr i g h t sr e s e r v e d

R e p r o d u c t i o no r t r a n s l a t i o no f a n yp a r to f t h i sw o r kb e y o n dt h a tp e r m i t t e db y S e c t i o n s1 0 7a n d1 0 8o f t h e

U n i t e dS t a t e sC o p y r i g h tA c t w i t h o u tt h ep e r m i s s i o no f t h e c o p y r i g h to w n e ri s u n l a w f u l .

P r i n t e di n t h eU n i t e dS t a t e s o fA m e r i c a

I S B N0 - 9 4 2 3 8 6 - 7 7 - 9

1 0 9 8 7 6 5 4 3 21

C O M P U T E !P u b l i c a t i o n s ,I n c . ,P o s tO f f i c eB o x5 4 0 6 ,G r e e n s b o r o ,N C2 7 4 0 3 ,( 9 1 9 )2 7 5 - 9 8 0 9 ,i s o n eo f t h eA B CP u b l i s h i n gC o m p a n i e s a n di s n o ta s s o c i a t e dw i t ha n ym a n u f a c t u r e ro f p e r s o n a lc o m p u t e r s .C o m m o d o r e6 4 a n d

V I C - 2 0a r et r a d e m a r k so f C o m m o d o r eE l e c t r o n i c sL i m i t e d .

Page 5: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 5/306

C o n t e n t s

A c k n o w l e d g m e n t s v

T o t h eK i d s v i i

T o t h eP a r e n t s v i i i

T o t h eT e a c h e r i x

A b o u t P r o g r a m m i n g x

A b o u tt h eB o o k x i

I n t r o d u c t i o n

1 . N E W ,P R I N T ,R E M ,a n dR U N 1

2 . C o l o ra n dt h eK e y b o a r d 1 0

3 . L I S T ,B o x e si n M e m o r y 1 7

4 . T h eC u r s o rK e y sa n d D r a w i n gP i c t u r e s 2 5

5 . T r i c k sw i t hP R I N T 3 2

6 . T h eI N P U TS t a t e m e n t

7 . T h eL E TS t a t e m e n t ,G l u i n gS t r i n g s 4 4

8 . T h eG O T OS t a t e m e n ta n dt h eR U N / S T O PK e y 5 0

9 . T h eI F S t a t e m e n t 5 9

1 0 .I n t r o d u c i n gN u m b e r s 6 6

1 1 .T A Ba n dD e l a yL o o p s 7 4

1 2 .T h eI F S t a t e m e n t w i t hN u m b e r s 8 0

1 3 .R a n d o mN u m b e r sa n dt h eI N TF u n c t i o n 8 7

1 4 .S a v et o D i s k 9

G r a p h i c s ,G a m e s ,a n dA l lT h a t1 5 .S o m eS h o r t c u t s 1 0 1

1 6 .M o v i n gP i c t u r e s I l l

1 7 .F O R - N E X TL o o p s 1 1 7

1 8 .D A T A ,R E A D ,R E S T O R E 1 2 3

1 9 .S o u n dE f f e c t s 1 2 9

2 0 .N a m e s ,C l o c k s ,a n dM o d e s 1 3 7

2 1 .C o l o r G r a p h i c s 1 4 5

2 2 .P O K E i n gG r a p h i c s

2 3 .S e c r e tW r i t i n ga n dt h eG E TS t a t e m e n t 2 4 .P r e t t yP r o g r a m s ,G O S U B , R E T U R N ,E N D 1 6 5

2 5 .L o g i c :A N D ,O R ,N O T . 1 7 2

A d v a n c e dP r o g r a m m i n g2 6 .S n i p p i n gS t r i n g s :L E F T $ ,M I D $ ,R I G H T S ,L E N 1 8 0

2 7 .S w i t c h i n gN u m b e r sw i t hS t r i n g s 1 8 7

Page 6: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 6/306

2 8 .A c t i o nG a m e sa n dt h eF u n c t i o nK e y s 1 9 3

2 9 .M u s i c 2 0 3

3 0 .A r r a y sa n dT h eD I MS t a t e m e n t 2 1 0

3 1 . S p r i t e s 2 1 93 2 .U s e r - F r i e n d l yP r o g r a m s 2

3 3 .D e b u g g i n g ,S T O P ,C O N T 2 3 6

A p p e n d i xD i s kU s a g e 2 4 3

R e s e r v e dW o r d s 2 4 6

A n s w e r st o A s s i g n m e n t s

G l o s s a r y 2 6 6

E r r o rM e s s a g e s 2 7 8

T o p i c a lI n d e x 2 8 2

C o m m a n d sa n dF u n c t i o n s I n d e x 2 8 5

Page 7: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 7/306

s

A c k n o w l e d g m e n t s

M ys i n c e r et h a n k sg o t o P a u lS h e l d o nF o o t ef o rs u g g e s t i n gI w r i t e ab o o ko n

t e a c h i n gB A S I Ct o c h i l d r e n .

T h i sb o o ki s s i x t hi n a s e r i e st h a t s t a r t e dw i t hK i d sa n dt h eA p p l e .E a c hb o o kh a s

b e e nw r i t t e nt o f i t t h e s t r e n g t h s o ft h ec o m p u t e ri n q u e s t i o na n dm o d i f i e di n r e

s p o n s et o w h a tI h a v el e a r n e da b o u tt e a c h i n gc h i l d r e n .

I a m d e e p l yg r a t e f u l t om y f e l l o ws t a f fm e m b e r sa t t h eM i c h i g a nS t a t eU n i v e r s i

" C o m p u t e rC a m p " :M a r kL a r d i e ,M a r yW i n t e r ,J o h nF o r s y t h ,a n d M a r cV a n

W o r m e r ,e a c ho f w h o ms h a r e dt h e i re x p e r i e n c e sw i t hm e a n dh e l p e dp r o v i d ei n

s i g h t i n t ot h em i n d so f t h ec h i l d r e n .

M a r yW i n t e r ' sv a s tk n o w l e d g eo f C o m m o d o r ea n ds k i l li n p r e s e n t i n gc o m p u t i n

t o p i c st o c h i l d r e nh a v eb e e ne s p e c i a l l yh e l p f u lt o m e o n m a n yo c c a s i o n s .

S e v e r a lf a m i l i e sh a v eu s e dt h eA p p l ev e r s i o no f t h i sb o o ki n t h e i rh o m e sa n do f

f e r e ds u g g e s t i o n sf o ri m p r o v e m e n t .I e s p e c i a l l yw i s ht o t h a n kG e o r g e C a m p b

a n dh i sy o u n g s t e r s ,A n d r e wa n dS a r a h ;B e t hO ' M a l i aa n dS c o t t ,J o h n ,a n dM a t t ;

C h r i sC l a r ka n dC h r i sJ r . ,T r y n ,D a n i e l ,a n dV i c k y ;a n dP a u l F o o t ea n dD a v i d .

C O M P U T E !P u b l i c a t i o n ss t a r t e dp u b l i s h i n gC O M P U T E !m a g a z i n ea t a b o u tt h e

s a m et i m et h a tI s t a r t e dw r i t i n ga r t i c l e so n h o m ec o m p u t i n g .I a mg r a t e f u lt h a t

C O M P U T E !e n c o u r a g e dm yw r i t i n g c a r e e rb y a c c e p t i n gs o m eo f m ye a r l ya r t i c l e s

T h i se n c o u r a g e m e n tc o n t i n u e sw i t ht h ep u b l i s h i n go f t h eb o o k s f r o mt h eK i d s

a n d. . . s e r i e s .

T h i sb o o kw a so r i g i n a l l yp u b l i s h e db y D a t a m o s t ,I n c .I g r e a t l ya p p r e c i a t e t h es k i l l

a n de n e r g yo f S t e p h e nL e v yi n e d i t i n ga n da s s e m b l i n gt h i sb o o kf o rC O M P U T

P u b l i c a t i o n s ,I n c .

P a u lT r a ps h a r e st h et i t l ep a g e h o n o r sw i t hm e .H i sd r a w i n g sa r ea n e s s e n t i a lp a r t

o f t h eb o o k ' s t e a c h i n gm e t h o d .I a mg r a t e f u lt o P a u lf o r h i s l i v e l y i d e a s ,c h e e r f u l

c o m p e t e n c e ,a n dq u i c kw o r kw h i c hm a k eh i ma n i d e a lw o r k m a t e .

Page 8: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 8/306

M yc h i l d r e nh a v ew o r k e d o nt h i sb o o ki n m a n yw a y s ,f r o mt y p i n ga n dt e s t i n g

p r o g r a m st o p r o o f r e a d i n ga n di n d e x i n g . I na d d i t i o n ,t h e ya t t e m p e dt o h e l pt h e

" b a l d - h e a d e do n e "t o p r o p e r l ye x p r e s sj u v e n i l et a s t e .I t h a n kK a r e n ,B r i a n ,a n d

M i n d af o r t h e i r e s s e n t i a lh e l p .

M yf i n a la n dh e a r t f e l tt h a n k sg o t o m yw i f e ,L o u i s e .A s a b s o r b e di n p r o

f e s s i o n a l d u t i e s a sI , s h en e v e r t h e l e s st o o ko n a n i n c r e a s e ds h a r eo f f a m i l yd u

t i e sa s t h eb o o ka b s o r b e dm y f r e et i m e .W i t h o u th e r s u p p o r tI c o u l dn o th a v e

f i n i s h e d t h ew o r k .

V I

Page 9: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 9/306

T o t h eK i d s

T h i sb o o kt e a c h e sy o uh o wt o w r i t ep r o g r a m sf o rt h eC o m m o d o r e6 4

c o m p u t e r .

Y o uw i l ll e a r nh o wt o m a k ey o u ro w na c t i o ng a m e s ,b o a r dg a m e s ,a n dw o r d

g a m e s .Y o uc a ne n t e r t a i ny o u rf r i e n d sw i t hc h a l l e n g i n gg a m e sa n dp r o v i d e

s o m es i l l ym o m e n t sa t y o u rp a r t i e sw i t ht h es h o r tg a m e sy o ui n v e n t .

P e r h a p s y o u rr e c o r dc o l l e c t i o no r y o u r p a p e rr o u t en e e d st h e o r g a n i z a t i o ny o u r

s p e c i a lp r o g r a m sc a np r o v i d e .I f y o ua r ew o r k i n g o nt h e s c h o o ly e a r b o o k ,

m a y b ea p r o g r a mt o h a n d l et h e f i n a n c e s o r r e c o r d sw o u l db e u s e f u l .

Y o um a yh e l py o u ry o u n g e rs i s t e r sa n db r o t h e r sb y w r i t i n gd r i l lp r o g r a m sf o r

a r i t h m e t i cf a c t so r s p e l l i n gw o r d s .E v e ny o u ro w ns c h o o l w o r ki n h i s t o r y o r a

f o r e i g nl a n g u a g em a yb e m a d ee a s i e rb y p r o g r a m sy o uw r i t e .

H o wt o u s et h i sb o o k .D o a l l t h ee x a m p l e s .T r ya l l t h ea s s i g n m e n t s .I f y o ug e t

s t u c k ,f i r s tg o b a c ka n dr e r e a dt h el e s s o nc a r e f u l l yf r o mt h et o p .Y o um a yh a v e

o v e r l o o k e ds o m ed e t a i l .A f t e rt r y i n gh a r dt o g e tu n s t u c kb y y o u r s e l f ,y o um a yg o

a s ka p a r e n to r t e a c h e rf o rh e l p .

T h e r ea r er e v i e wq u e s t i o n sf o re a c hl e s s o n .

B e s u r ey o uc a na n s w e rt h e mb e f o r e

a n n o u n c i n gt h a ty o uh a v ef i n i s h e dt h el e s s o n !

M A YT H EB L U E B I R DO FH A P P I N E S S

E A TA L LT H EB U G SI N Y O U R

P R O G R A M S !

v n

Page 10: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 10/306

T o t h e P a r e n t s

T h i sb o o ki s d e s i g n e dt o t e a c hB A S I Co n t h eC o m m o d o r e6 4 t o y o u n g s t e r s

f r o m1 0 t o 1 4 y e a r so l d .I t g i v e sg u i d a n c e ,e x p l a n a t i o n s ,e x e r c i s e s ,r e v i e w s ,a n d

q u i z z e s .S o m ee x e r c i s e sh a v er o o mf o rt h es t u d e n tt o w r i t ei n a n s w e r st h a ty o u

c a nc h e c kl a t e r .A n s w e r sa r ep r o v i d e di n t h eb a c ko f t h eb o o kf o rp r o g r a m

a s s i g n m e n t s .

Y o u rc h i l dw i l lp r o b a b l yn e e ds o m eh e l pi n g e t t i n gs t a r t e da n da g r e a t d e a l o f

e n c o u r a g e m e n ta t t h es t i c k y p l a c e s .F o rf u r t h e rg u i d a n c e ,y o um a yw i s ht o r e a d

m y a r t i c l ei n C r e a t i v eC o m p u t i n g ,A p r i l1 9 8 3 ,p . 1 6 8 .

L e a r n i n gt o p r o g r a mi s n o t e a s yb e c a u s ei t r e q u i r e sh a n d l i n gs o m es o p h i s

t i c a t e dc o n c e p t s .I t a l s o r e q u i r e sa c c u r a c ya n da t t e n t i o nt o d e t a i l ,w h i c ha r en o t

t y p i c a lc h i l d h o o dt r a i t s .F o rt h e s e r e a s o n s ,i t i s a v a l u a b l e e x p e r i e n c ef o rc h i l

d r e n .T h e yw i l lb e w e l lr e w a r d e di f t h e y c a ns t i c kw i t ht h eb o o kl o n ge n o u g h

t o r e a c ht h ef u np r o j e c t s t h a ta r ep o s s i b l eo n c ea r e p e r t o i r eo f c o m m a n d si s

b u i l tu p .

H o wt o u s et h i sb o o k .T h eb o o ki s d i v i d e di n t o3 3 l e s s o n sf o rt h e k i d st o d o .

E a c hl e s s o ni s p r e c e d e db y a " N o t e s "s e c t i o nw h i c hy o us h o u l dr e a d .I t o u t l i n e s

t h et h i n g st o b e s t u d i e d ,g i v e ss o m eh e l p f u lh i n t s ,a n dp r o v i d e sq u e s t i o n sw h i c h

y o uc a nu s ev e r b a l l y( u s u a l l ya t t h ec o m p u t e r )t o s e ei f t h es k i l l sa n dc o n c e p t s

h a v e b e e nm a s t e r e d .

T h e s en o t e sa r ei n t e n d e df o rt h ep a r e n t s ,

b u to l d e r s t u d e n t sm a ya l s op r o f i tb y

r e a d i n gt h e m .Y o u n g e rs t u d e n t sw i l lp r o b a b l y

n o t r e a dt h e m ,a n dc a ng e ta l l t h e

m a t e r i a lt h e yn e e df r o mt h el e s s o n s .F o r

t h ey o u n g e s tc h i l d r e n ,i t m a yb e a d v i s

a b l et o r e a dt h e l e s s o no u tl o u d w i t ht h e m

a n dd i s c u s si t b e f o r et h e ys t a r tw o r k .

V l l l

Page 11: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 11/306

T o t h eT e a c h e r

T h i sb o o ki s d e s i g n e df o rs t u d e n t si n a b o u tt h es e v e n t hg r a d e .I t t e a c h e sB A S I C

a n dt h ef e a t u r e so f t h eC o m m o d o r e6 4 .

T h el e s s o n sc o n t a i n e x p l a n a t i o n s( i n c l u d i n gc a r t o o n s ) ,e x a m p l e s ,e x e r c i s e s ,a n d

r e v i e wq u e s t i o n s .N o t e sf o rt h ei n s t r u c t o r ,w h i c ha c c o m p a n ye a c hl e s s o n ,s u m

m a r i z et h em a t e r i a l ,p r o v i d eh e l p f u lh i n t s ,a n dg i v er e v i e wq u e s t i o n s .

T h eb o o ki s i n t e n d e df o ri n d e p e n d e n ts t u d y ,b u tm a ya l s ob e u s e di n a c l a s s

r o o ms e t t i n g .

I v i e wt h i sb o o ka s t e a c h i n gp r o g r a m m i n gi n t h eb r o a d e s ts e n s e ,u s i n g t h e

B A S I Cl a n g u a g e ,r a t h e rt h a nt e a c h i n gB A S I C .S e y m o u rP a p e r th a sp o i n t e do u t

i n M i n d s t o r m s( B a s i cB o o k s ,1 9 8 0 )t h a tp r o g r a m m i n gc a nt e a c hp o w e r f u li d e a s .

A m o n gt h e s ei s t h ei d e at h a tp r o c e d u r e sa r ee n t i t i e si n t h e m s e l v e s .T h e yc a nb e

n a m e d ,b r o k e nd o w ni n t oe l e m e n t a r yp a r t s ,a n dd e b u g g e d .S o m eo t h e rc o n

c e p t si n c l u d e" c h u n k i n g "i d e a si n t o" m i n d - s i z e db i t e s , "o r g a n i z i n gs u c hm o d

u l e si n a h i e r a r c h i c a ls y s t e m , l o o p i n gt o r e p e a tm o d u l e s ,a n dc o n d i t i o n a lt e s t i n g

( t h eI F - T H E Ns t a t e m e n t ) .

E a c hc o n c e p ti s t i e d t ot h es t u d e n t ' s

e v e r y d a ye x p e r i e n c e st h r o u g hc h o i c eo f

l a n g u a g et o e x p r e s s t h ei d e a ,t h r o u g h

c h o i c eo f e x a m p l e s ,a n dt h r o u g hc a r

t o o n s .T h u s ,m e t a p h o ri s u t i l i z e di n

m a k i n gt h e" n e w "m a t e r i a lf a m i l i a rt o t h e

s t u d e n t .

I X

Page 12: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 12/306

A b o u tP r o g r a m m i n g

T h e r ei s a c o m m o nm i s c o n c e p t i o n a b o u tp r o g r a m m i n ga c o m p u t e r .M a n yp e o

p l et h i n kt h a ta b i l i t yi n m a t h e m a t i c si s r e q u i r e d .N o ts o .T h ec h i l d h o o da c t i v -

i t i e st h a tc o m p u t i n gm o s tr e s e m b l e sm a yb e p l a y i n gw i t hb u i l d i n gb l o c k sa n d

w r i t i n ga n E n g l i s h c o m p o s i t i o n .

L i k ea b l o c ks e tt h a th a sm a n yc o p i e so f a f e wt y p e so f b l o c k s ,B A S I Cu s e sa

r e l a t i v e l ys m a l ln u m b e ro f s t a n d a r dc o m m a n d s .Y e t t h eb l o c k sc a nb e f o r m e d

i n t o au n i q u ea n di m a g i n a t i v ec a s t l e ,a n dB A S I Cc a nb e u s e dt o w r i t ea n a l m o s t

l i m i t l e s sv a r i e t yo f p r o g r a m s .

L i k ea n e s s a yo n t h et h e m e" H o wI S p e n tM yS u m m e r , "w r i t i n g ap r o g r a mi n

v o l v e ss k i l la n dp l a n n i n go n a l l s c a l e s .T o w r i t e at h e m e ,a c h i l dm u s to r g a n i z e

t h o u g h t so n s e v e r a ls c a l e s ,f r o mt h eo v e r a l lt o p i c ,t o l e a da n ds u m m a r yp a r a

g r a p h sa n ds e n t e n c e s ,o n d o w nt o g r a m m a r ,p u n c t u a t i o n ,a n ds p e l l i n go f e a c h

w o r di n t h es e n t e n c e s .

C r e a t i v i t yi n e a c ho f t h e s ea c t i v i t i e s — b l o c k s ,w r i t i n g ,a n dB A S I C — h a sl i t t l e

s c o p ea t t h e s m a l l e s tl e v e l — i n d i v i d u a lb l o c k s ,w o r d s ,a n dc o m m a n d s .A t b e s t ,

a s m a l lb a go f t r i c k si s d e v e l o p e d .F o r e x a m p l e ,t h ec h i l dm a yd i s c o v e rt h a tt h e

t r i a n g l eb l o c k ,f i r s tu s e dt o m a k er o o f s ,m a k e ss p l e n d i df i r t r e e s .W h a ti s

n e e d e da t t h e s m a l ls c a l ei s a c c u r a c yi n s y n t a x .H e r e ,c o m p u t i n gi s a n a l m o s t

i d e a ls e l f - p a c e dl e a r n i n gs i t u a t i o n ,b e c a u s es y n t a xe r r o r sa r e l a r g e l yd i s c o v e r e d

a n dp o i n t e do u tb y t h eB A S I Ci n t e r p r e t e r a st h ec h i l db u i l d sa n dt e s t st h e

p r o g r a m .

O n a l a r g e rs c a l e ,c r e a t i v i t yc o m e si n t of u l ls c o p ea n dm a n yo t h e rl a t e n ta b i l

i t i e so f t h ec h i l da r ed e v e l o p e d .S c h o o ls k i l l ss u c ha s a r i t h m e t i ca n dl a n g u a g e

a r t sa r eu t i l i z e da s n e e d e d ,a n dt h u ss t r e n g t h e n e d .B u tt h es t r o n g e s tf e a t u r e so f

p r o g r a m m i n ga r eb a l a n c e db e t w e e na n a l y s i s( w h yd o e s n ' ti t w o r ka s I w a n t )

a n ds y n t h e s i s( p l a n n i n go n s e v e r a ls c a l e s ,f r o mt h ep r o g r a ma s a w h o l ed o w n

t h r o u g hl o o p sa n ds u b r o u t i n e st o i n d i v i d u a lc o m m a n d s ) .

T h ea n a l y t i c a la n ds y n t h e t i c a ls k i l l sl e a r n e di n p r o g r a m m i n gc a nb e t r a n s f e r r e d

t o m o r eg e n e r a ls i t u a t i o n sa n dc a n h e l pt h ec h i l dt o a m o r em a t u r es t y l eo f

t h i n k i n ga n dw o r k i n g .

Page 13: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 13/306

A b o u tt h eB o o k

T h i sb o o ki s a r r a n g e di n 3 3 l e s s o n s ,e a c h w i t h" I n s t r u c t o rN o t e s "a n de a c h

' c o n t a i n i n ga s s i g n m e n t sa n dr e v i e wq u e s t i o n s .

F o ri n s t r u c t o r sw h of e e lt h e m s e l v e sw e a ki n B A S I Co r w h oa r eb e g i n n e r st h e m

s e l v e s ,t h es t u d e n t ' sl e s s o n sf o r ma g o o di n t r o d u c t i o nt o B A S I C .T h el e s s o n s

a n dn o t e sd i f f e ri n s t y l e .T h el e s s o n sa r ep r a g m a t i ca n dh o l i s t i c ;t h en o t e s

a n dg l o s s a r ya r e d e t a i l e da n de x p l a n a t o r y .

T h eb o o ks t a r t sw i t ha b a r e - b o n e si n t r o d u c t i o nt o p r o g r a m m i n g ,l e a d i n g

q u i c k l yt o t h ep o i n tw h e r ei n t e r e s t i n gp r o g r a m sc a nb e w r i t t e n .S e et h en o t e s

f o rl e s s o n6 , " T h eI N P U TS t a t e m e n t , "f o ra n e x p l a n a t i o n .T h ec e n t r a lp a r t o f

t h eb o o ke m p h a s i z e sm o r ea d v a n c e da n dp o w e r f u lt e c h n i q u e s .T h ef i n a lp a r t

o f t h eb o o kc o n t i n u e sb u i l d i n go n t h i s ,b u ta l s od e a l sw i t h b r o a d e ra s p e c t s o f

t h ea r to f p r o g r a m m i n g ,s u c ha s e d i t i n g ,d e b u g g i n g ,a n du s e r - f r i e n d l y

p r o g r a m m i n g .

T h ea s s i g n m e n t si n v o l v e w r i t i n gp r o g r a m s — u s u a l l ys h o r to n e s .O f c o u r s e ,

m a n yd i f f e r e n tp r o g r a m sa r es a t i s f a c t o r ys o l u t i o n st o t h e s ea s s i g n m e n t s .I n

t h eb a c ko f t h eb o o kI h a v ei n c l u d e ds o l u t i o n sf o ra s s i g n e dp r o g r a m s ,s o m e

o f t h e mw r i t t e nb y c h i l d r e nw h oh a v eu s e dt h eb o o k .

L e s s o n1 4 ," S a v i n gt o D i s k , "c a nb e s t u d i e da n y t i m ea f t e rt h et h i r d l e s s o n .

X I

Page 14: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 14/306

Page 15: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 15/306

I n s t r u c t o rN o t e s1 . N E W ,P R I N T ,R E M ,a n dR U N

T h i sl e s s o ni s a n i n t r o d u c t i o nt o t h ec o m p u t e r .T h e r ea r em a n ym i n o rq u e s t i o n s

y o u rs t u d e n tm a yh a v ea t t h es t a r t ,a n d y o us h o u l dp u l lu p a c h a i ra n dh e l pi n

t h ef a m i l i a r i z a t i o n .

I f s o m e t h i n gg o e sw r o n ga n da l le l s ef a i l s , t e l ly o u rs t u d e n tt o t u r no f ft h ec o m

p u t e r ,t h e nt u r ni t o n a n ds t a r ta g a i n .

T h el i g h tb l u ew r i t i n go n a d a r kb l u eb a c k g r o u n dm a yb e h a r dt o r e a d . I n s t r u c

t i o n sa r eg i v e nf o rm a k i n gw h i t el e t t e r s .I f t h e s ea r es t i l lh a r dt o r e a d ,t h e nt h e

i n s t r u c t i o n st o P O K E5 3 2 8 1 , 0t o g e t ab l a c kb a c k g r o u n dm a yb e f o l l o w e d .

T h ec o n t e n t s o f t h el e s s o n :

1 . T u r n i n go n t h ec o m p u t e r .

2 . T y p i n gv e r s u se n t e r i n gc o m m a n d so r l i n e s .T h eR E T U R Nk e y .

3 . T h ec o m p u t e ru n d e r s t a n d s o n l ya l i m i t e dn u m b e ro f w o r d s .

4 . R E Mp u t sr e m a r k si n t h ep r o g r a m .

5 . W h a ti s a p r o g r a m ?N u m b e r e dl i n e s .

6 . C l e a r i n gt h es c r e e n .

7 . W h i t el e t t e r so n a b l a c kb a c k g r o u n d .

8 . M e m o r yc a nb e c l e a r e dw i t hN E W .

9 . W h a ti s s e e no n t h es c r e e na n dw h a ti s i n m e m o r ya r ed i f f e r e n t .( T h i sm a yb e

a h a r dc o n c e p tf o rt h e s t u d e n tt o u n d e r s t a n da t f i r s t . )

1 0 .R U Nm a k e st h ec o m p u t e r g ot o m e m o r y ,l o o ka t t h es t a t e m e n t si n t h el i n e s

( i n o r d e r ) ,a n dp e r f o r mt h es t a t e m e n t s .

1 1 .Y o uc a ns k i pn u m b e r si n c h o o s i n gl i n en u m b e r s ,a n dw h yy o um a yw a n tt o

d o s o .

Q u e s t i o n s :

1 . W r i t ea p r o g r a mt h a tw i l lp r i n ty o u rn a m e .

2 . M a k et h ep r o g r a md i s a p p e a rf r o mt h eT Vs c r e e nb u ts t a yi n m e m o r y .

3 . R u ni t .

Page 16: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 16/306

4 . E r a s et h ep r o g r a mf r o mm e m o r y .

5 . C l e a rt h es c r e e na n dw r i t ea p r o g r a mt h a tp r i n t sH E L L O .

6 . M a k ei t r u n .

7 . E r a s ei t f r o mm e m o r yb u tl e a v ei t o n t h es c r e e n .

8 . H o wd o y o um a k et h el e t t e r sn i c ea n dw h i t e ?

Page 17: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 17/306

L e s s o n1 . N E W ,P R I N T ,R E M ,a n dR U N

H o wt o G e tS t a r t e dT u r no n t h ec o m p u t e r .Y o uw i l ls e ea m e s s a g eo n t h es c r e e n .T h el a s tw o r di s

R E A D Y .

B e l o wR E A D Yi s a f l a s h i n g s q u a r e .T h i ss q u a r ei s c a l l e dt h ec u r s o r .W h e ny o us e e

i t f l a s h i n g ,i t m e a n st h ec o m p u t e ri s r e a d yf o ry o ut o t y p es o m e t h i n gi n .

C u r s o rm e a n sr u n n e r .T h el i t t l es q u a r e r u n s a l o n gt h es c r e e na n ds h o w s w h e r e

t h en e x tl e t t e ry o ut y p eg o e s .

T y p i n g

T y p es o m et h i n g s .W h a ty o ut y p es h o w s o nt h eT Vs c r e e n .

C U R S O R ,G OH O M E !

T h ec u r s o r ' sh o m ei s i n t h e c o r n e ro f t h e s c r e e na t t h et o p .F i n dt h eC L R / H O Mk e y( i t ' so n t h et o pr o w ,r i g h ts i d eo f t h ek e y b o a r d )a n dp r e s si t . T h ec u r s o rj u m p s

t o h o m e .

N o wt y p es o m em o r e .Y o ua r ew r i t i n go v e rw h a ti s a l r e a d yo n t h es c r e e n .T h i si s

a m e s s .L e t ' sg e t a n i c ec l e a ns c r e e n .

Page 18: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 18/306

E r a s i n gt h eS c r e e n

T w ok e y su s e dt o g e t h e re r a s e t h es c r e e n .

H o l dd o w no n eo f t h eS H I F Tk e y sa n dp r e s s t h eC L R / H O M Ek e y .T h es c r e e ni s

e r a s e d .

C L Rs t a n d sf o rc l e a r .C l e a rt h es c r e e nm e a n st h es a m ea s e r a s et h e s c r e e n .

C o m m o n dt h eC o m p u t e r

T r yt h i s .

T y p e : G I V EM EC A N D Y

a n dp r e s st h eR E T U R Nk e y .

( I fy o um a k ea m i s t a k e ,p r e s sC L R / H O M E

a n ds t a r to v e r . )

T h ec o m p u t e rp r i n t e d

? S Y N T A XE R R O R

R E A D Y .

W h e nt h ec o m p u t e rp r i n t s7 S Y N T A XE R R O R ,i t m e a n st h ec o m p u t e rd i dn o t

u n d e r s t a n dy o u .

T h ec o m p u t e ru n d e r s t a n d so n l ya b o u t7 0 w o r d s .Y o un e e dt o l e a r nw h i c h w o r

t h ec o m p u t e ru n d e r s t a n d s .

H e r ea r e t h ef i r s tf o u rw o r d st o l e a r n :

N E W ,P R I N T ,R E M ,a n dR U N .

Page 19: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 19/306

N i c e W h i t eL e t t e r s

I f t h el e t t e r so n y o u rT Vs c r e e na r eh a r dt o r e a d ,t r yt h i s :

F i n dt h eC T R Lk e y .

P r e s si t d o w na n dh o l di t d o w nw h i l ey o up r e s st h e 2k e y .

N o wt h el e t t e r sy o ut y p ew i l lb e p u r ew h i t eo n a d a r kb l u eb a c k g r o u n d .

N i c eB l a c kB a c k g r o u n d

I f i t i s s t i l lh a r dt o r e a dt h el e t t e r so n t h eT V ,t r yt h i s :

T y p e : P O K E5 3 2 8 1 , 0 a n dp r e s s t h eR E T U R Nk e y .

T h eb a c k g r o u n do n t h eT Vs c r e e nt u r n sb l a c k .A d j u s tt h eT Vc o n t r o l st o m a k et h e

w r i t i n go n t h e s c r e e ne a s yt o r e a d .

T h eN E WC o m m a n d

T y p e : H E W a n dp r e s sR E T U R N .

N E We m p t i e st h ec o m p u t e r ' sm e m o r ys o y o uc a np u ty o u rp r o g r a mi n i t .

Page 20: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 20/306

H o wt o E n t e ra L i n e

W h e nw e s a ye n t e r ,w e w i l la l w a y sm e a nt o d o t h e s et w ot h i n g s .

1 . T y p ea l i n e .

2 . T h e np r e s st h eR E T U R Nk e y .

C l e a rt h es c r e e na n de n t e rt h i sl i n e :

1 0 P R I N TM H I M

( T h e" m a r k sa r eq u o t a t i o nm a r k s .T o m a k e" m a r k s ,h o l dd o w nt h eS H I F Tk e y

a n dp r e s st h ek e yt h a th a st h e2 a n dt h e" o n i t . )

( D i dy o ur e m e m b e rt o p r e s s t h eR E T U R Nk e ya t t h ee n do f t h el i n e ? )

N o wt h el i n en u m b e r1 0 i s i n t h ec o m p u t e r ' sm e m o r y .

I t w i l ls t a y i nm e m o r y :

u n t i ly o ue n t e rt h eN E Wc o m m a n d ,o r

u n t i ly o ut u r no f ft h ec o m p u t e r .

L i n e 1 0i s a v e r ys h o r tp r o g r a m .

Page 21: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 21/306

T h eN u m b e r0 a n dt h eL e t t e rO

T h ec o m p u t e ra l w a y sw r i t e s t h ez e r ol i k et h i s :

z e r o 0

a n dt h el e t t e rO l i k et h i s :

l e t t e rO o

Y o uh a v et o b e c a r e f u lt o d o t h es a m e .

R i g h t : 1 0 p r i n t" H i 1 1

W r o n g :1 0 p r i n t" h i "

W h a tI s a P r o g r a m ?

A p r o g r a mi s a l i s to f s t a t e m e n t sf o rt h ec o m p u t e rt o d o .T h es t a t e m e n t sa r ew r i t

t e ni n l i n e s .E a c hl i n es t a r t sw i t ha n u m b e r .T h ep r o g r a my o ue n t e r e da b o v eh a s

o n l yo n el i n e .

H o wt o R u na P r o g r a m

A m o m e n ta g oy o up u tt h i sp r o g r a mi n m e m o r y :

1 0 P R I N T" H I "

N o we n t e r : R U N

( D i dy o ur e m e m b e rt o p r e s s t h eR E T U R Nk e y ? )

T h eR U Nc o m m a n dt e l l st h ec o m p u t e rt o l o o k

i n i t s m e m o r yf o ra p r o g r a m a n dt h e nt o o b e y

t h es t a t e m e n t si t r e a d si n t h el i n e s .

Page 22: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 22/306

D i dt h ec o m p u t e r o b e yt h eP R I N Ts t a t e m e n t ?T h eP R I N Ts t a t e m e n tt e l l st h ec o m

p u t e rt o p r i n tw h a t e v e ri s b e t w e e nt h e q u o t a t i o nm a r k s .T h ec o m p u t e rp r i n t e d :

H I

R E A D Y .

H o wt o N u m b e rt h eL i n e sI n a P r o g r a m

C l e a rt h es c r e e n .

E n t e rN E Wa n dt h e nt h i sp r o g r a m :

1 R E MH E L L O

2 P R I N T" H I "

3 P R I N T" F R I E N D "

T h i sp r o g r a mh a st h r e el i n e s .E a c hl i n es t a r t sw i t ha s t a t e m e n t .Y o uh a v ea l r e a d y

l e a r n e dt h eP R I N Ts t a t e m e n t .W ew i l lt e l ly o ua b o u tt h eR E Ms t a t e m e n ti n a

m i n u t e .

U s u a l l yy o uw i l ls k i pn u m b e r sw h e nw r i t i n gt h ep r o g r a m .

L i k et h i s :

1 0 R E MH E L L O2 0 P R I N T" H I "3 0 P R I N T" F R I E N D 1 1

I t i s t h es a m ep r o g r a mb u th a sd i f f e r e n tn u m b e r s .T h e n u m b e r sa r ei n o r d e r ,b u t

s o m en u m b e r sa r es k i p p e d .Y o us k i pn u m b e r ss o y o uc a na d dn e wl i n e s i nb e

t w e e nt h e o l dl i n e si f t h ep r o g r a mn e e d sf i x i n gl a t e r .

R u nt h ep r o g r a my o uh a v ee n t e r e d .T h ec o m p u t e rs t a r t sw i t ht h el o w e s tl i n e

n u m b e ra n dg o e sd o w nt h el i s ti n o r d e ra n dd o e sw h a te a c hl i n et e l l si t t o d o .

T h eR E MS t a t e m e n t

T h eR E Ms t a t e m e n ti s f o rw r i t i n gl i t t l en o t e st o y o u r s e l f .T h ec o m p u t e ri g n o r e s

t h en o t e s .U s eR E Mf o rp u t t i n gt h en a m eo f y o u rp r o g r a mi n t h et o pl i n eo f t h e

p r o g r a m .

Page 23: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 23/306

A s s i g n m e n t1 :

1 . U s et h eC L R / H O M Ek e yt o p u tt h ec u r s o rh o m e .

N o wu s et h es a m ek e y ( S H I F T e dC L R / H O M E )t o e r a s e t h es c r e e n .

2 . U s et h ec o m m a n dN E W .E x p l a i nw h a ti t d o e s .

3 . W r i t ea p r o g r a mt h a tu s e sR E Mo n c ea n dP R I N Tt w i c e .T h e nu s et h ec o m m a n

R U Nt o m a k et h ep r o g r a mo b e yt h e s t a t e m e n t s .E x p l a i nw h a ti t d o e s .

Page 24: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 24/306

I n s t r u c t o rN o t e s2 . C o l o ra n dt h e K e y b o a r d

T h eC o m m o d o r e6 4 h a s p o w e r f u lc o l o ra n dg r a p h i c sc h a r a c t e r s a v a i l a b l ef r o mt h e

k e y b o a r d .T h e yp r o v i d ep l e n t yo f " b e l l sa n dw h i s t l e s "t o t h es t u d e n tf o ri n c r e a s

i n gp r o g r a mr i c h n e s s .

E a c hk e yh a su p t o t h r e ef u n c t i o n s ,c h o s e nb y j u s tp r e s s i n gt h ek e y ,o r b y p r e s s

i n gi t w h i l e h o l d i n gd o w nt h eS H I F T ,C T R L ,o r t h eC o m m o d o r ek e y .F o rc o l o r s ,

t h eC T R Lk e yi s h e l dd o w nw h i l ea c o l o rk e y( o n eo f t h en u m b e rk e y s )i s

p r e s s e d .

T h eC L R / H O M Ek e yh o m e st h e c u r s o rw h e np r e s s e d .( H o m ei s t h eu p p e rl e f t

c o r n e ro f t h es c r e e n . )P r e s s e d w i t hS H I F T ,t h eC L R / H O M Ek e ye r a s e s t h es c r e e n .

A l lt h e s ek e y sc a nb e u s e di n P R I N Ts t a t e m e n t si n a p r o g r a m .T h i sg i v e s t h e

C o m m o d o r e6 4 s o m ev e r y p o w e r f u lo p t i o n s ,a n ds e v e r a ll e s s o n si n t h eb o o ka r e

d e v o t e dt o e x p l o i t i n gt h e m .

A w h i t eb a c k g r o u n di s u s e di n t h i sl e s s o n .S o m ec o l o r sd o n o ts h o wu p w e l lo n

w h i t e .I n f a c t ,f o re a c hc o l o r s c r e e n ,t h e r ew i l lb e s o m ec o l o r s t h a tg i v e b l u r r y

c h a r a c t e r s .

I f y o uc h o o s ew h i t ef o rt h e s c r e e nc o l o ra n da l s ow h i t ef o rt h el e t t e rc o l o r ,y o u

w i l ls e en o t h i n gw h e ny o ut y p e !T r yP O K E5 3 8 2 1 , 1 5f o ra g r a ys c r e e nt h a tw i l l

s h o wl e t t e r so f a n yc o l o ro b t a i n e df r o mt h ec o l o rk e y s .

P r e s s i n gt h eC T R La n dR V SO Nk e y sa t t h es a m et i m eg i v e sr e v e r s e dc h a r a c t e r s

T h er e v e r s e o f a s p a c ei s a c o l o r e db l o c k .A u s e f u lw a yt o m a k ec o l o rb a r sf o r

a d j u s t i n g t h ec o l o rT Vi s t o p r e s sC T R La n dR V SO N ,t h e n h o l dd o w nt h es p a c e

b a rt o m a k ea c o l o r e db a r .R e p e a tf o re a c ho f t h ec o l o r sy o ug e tf r o mC T R La n da

c o l o rk e y .T h e na d j u s ty o u rT Vf o rb e s tc o l o r .Y e l l o wa n dp e r h a p sp u r p l ea r et h e

m o s ts e n s i t i v et o p r o p e ra d j u s t m e n t .

1 0

Page 25: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 25/306

Q u e s t i o n s :

' 1 . H o wd o y o u d oe a c ho f t h e s et h i n g s :

1 M a k et h ec o m p u t e rt y p ew i t hr e dl e t t e r s ?E r a s et h es c r e e n ?

H E m p t yt h em e m o r y ?_ P r i n ty o u rn a m e ?

2 . H o wd o y o uc h a n g et h es c r e e nb a c k g r o u n dc o l o rt o w h i t e ?

3 . W h a ts p e c i a lk e yd o y o up r e s st o e n t e r al i n e ?

4 . W h a td o e st h ec o m p u t e rm e a nw h e ni t p r i n t sS Y N T A XE R R O R ?

5 . H o wc o u l dy o up r i n tF I R Ew i t h e a c hl e t t e ri n a d i f f e r e n t c o l o r ?

1 1

Page 26: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 26/306

L e s s o n2 . C o l o ra n dt h eK e y b o a r d

T u r ny o u rc o m p u t e ro f f ,t h e no n a g a i n .N o wy o u ' r er e a d yt o s t a r tt h el e s s o n .

M a k i n ga W h i t eB a c k g r o u n d

E n t e r : P O K E5 3 2 8 1 , 1

T h es c r e e nt u r n s w h i t e .

C a r e f u l !T h en u m b e rh a st o b e e x a c t l y5 3 2 8 1 .I f y o uu s e a n o t h e rn u m b e rb y m i s

t a k e ,t h ec o m p u t e rm a yg e t" s i c k "a n d y o uw i l lh a v et o t u r ni t o f f ,t h e no n ,t o

m a k ei t w e l la g a i n .

M a k i n gR e dL e t t e r s

L o o ka t t h e3 k e y .T h e r ea r e t h r e e t h i n g s w r i t t e no n i t .

T h ec h a r a c t e r3 i n t h em i d d l e .

T h ec h a r a c t e r# a t t h et o p .

T h e w o r dR E Do n t h ef r o n t o ft h ek e y .

H e r ea r et h e t h r e e t h i n g st h i sk e yc a nd o :

P r e s s t h e3 k e y .I t p r i n t s3 .

H o l dd o w nt h eS H I F Tk e ya n dp r e s s3 . I t p r i n t s # .

H o l dd o w nt h eC T R Lk e ya n dp r e s s3 . I t c h a n g e st h ec o l o r !

( C T R Li s s h o r tf o r c o n t r o l .

T h eC T R Lk e yh e l p sc o n t r o l

t h ec o l o rt h a ti s p r i n t e d . )

T h ec u r s o ri s n o wr e d .E v e r y

l e t t e rw e t y p ew i l lb e r e d ,t o o .

T r yi t .

Page 27: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 27/306

T h e r ea r e e i g h tc o l o r so n t h en u m b e rk e y s .T h e ya r e :

B l a c k B L K

W h i t e W H TR e d R E D

C y a n( b l u e - g r e e n )C Y NP u r p l e P U R

G r e e n G R NB l u e B L U

Y e l l o w Y E L

T y p el e t t e r si n d i f f e r e n tc o l o r s .H o l dd o w nt h eC T R Lk e ya n dp r e s so n eo f t h e

c o l o rk e y s .

N o wt y p e .T r y e a c hc o l o r .

T u n et h eT Vf o rG o o dC o l o r s

T u n et h eT Vc o l o r c o n t r o l ss o t h a tt h el e t t e r sy o ut y p e da r et h er i g h tc o l o r s .

I f y o uc a nm a k ea g o o dy e l l o wt h er e s to f t h ec o l o r s a r ep r o b a b l yo k a y .

R a i n b o wL e t t e r s

Y o uc a nm a k et h ec o m p u t e r c h a n g ec o l o r si n t h em i d d l eo f ap r o g r a m .T e l lt h e

c o m p u t e rw h a tc o l o rb y u s i n ga P R I N Ts t a t e m e n t .

E n t e r :

1 0 R E MR A I N B O W

J 2 0 P R I N T" . . . "3 0 P R I N T" P O T "

» 4 0 P R I N T" . . . "

5 0 P R I N T" O PG O L D "

b u td o n ' tp u td o t si n l i n e2 0 o r l i n e 4 0 .

I n l i n e2 0 p r e s sC T R La n dt h eB L Kk e yi n s t e a do f d o t s .

I n l i n e4 0 p r e s sC T R La n dt h eY E Lk e yi n s t e a d o fd o t s .

1 3

Page 28: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 28/306

I t w i l ll o o kl i k e t h i so n t h es c r e e n :

2 0 P R I N T" ■ "

4 0 P R I N T" * "

R u nt h ep r o g r a m .I t s h o u l dp r i n tP O Ti n b l a c kl e t t e r sa n dO FG O L Di n y e l l o wl e t t e r s .

O h ,O h !I ' mi n T r o u b l e ,K i d s !

H o wc a nI t e l ly o ut o p r e s sC T R La n da c o l o rk e yi n a P R I N Ts t a t e m e n t ?

I c a n ' tj u s tu s ed o t sb e c a u s ey o uw i l ln o tk n o ww h a tc o l o rI m e a n .

I k n o w !I w i l lu s ec a p i t a ll e t t e r si n s i d eb r a c e sl i k et h e s e{ } f o rc o l o rk e y s .

L o o k : S OP R I N T" { C Y N } "

m e a n s2 0 P R I N T" h o l dC T R Lp r e s sC Y N "

g i v e s 2 0 P R I N T " E "o n t h e s c r e e n

b u t 2 0 P R I N T" C Y N "

m e a n st y p et h e t h r e el e t t e r sC , Y , a n dN i n s i d et h eq u o t a t i o nm a r k s .

A S h o r t c u t

P u tt h ec o l o rk e yc h a r a c t e r si n t h es a m eP R I N Ts t a t e m e n t sa s t h ew o r d s .T h ep r o

g r a ml o o k sl i k et h i s :

I n t h eb o o k O n t h es c r e e n

1 0 R E MR A I N B O W 1 0 R E MR A I N B O W

2 0 P R I N T" { G R N } P 0 T "2 0 P R I N T" t P O T "

3 0 P R I N T" { Y E L } 0 PG O L D "3 0 P R I N T" * O PG O L D "

( R e m e m b e r :" { G R N } "m e a n sh o l dd o w nC T R Lk e ya n dp r e s s6 k e y . )

1 4

Page 29: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 29/306

M o r eR a i n b o w s

R u n :

1 0 R E ML U C K Y2 0 P R I N T" { R E P } H I 1 13 0 P R I N T" { G R N J S A L L Y "

R u n :

1 0 R E M L E P R E C H A U N3 0 P R I N T" { R E D }P { C Y N }I { P U R }X { G R N }I { B L U }E { Y E L }S "

I p u ts p a c e si n l i n e3 0 s o y o uc a nr e a di t e a s i l y .Y o us h o u l dn o t p u ti n t h es p a c e s .

W i t h o u ts p a c e si t l o o k sl i k et h i s :

3 0 P R I N T" { R E D } P { C Y N } I { P U R } X { G R N } I { B L U } E { Y E L

A r e n ' ty o ug l a dI p u ti n t h e s p a c e s ?

H o wd o e sl i n e3 0 l o o ko n t h e s c r e e n ?

1 5

Page 30: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 30/306

Page 31: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 31/306

I n s t r u c t o rN o t e s3 . L I S T ,B o x e si n M e m o r y

I n t h i sl e s s o n :

L I S T ,L I S T3 0

M e m o r yb o x e s h o l d i n gl i n e s

E r a s eo n el i n ef r o mm e m o r y

A d da l i n eb e t w e e no l dl i n e s

R e p l a c ea l i n e

R E Ms t a t e m e n t

C L R / H O M Ek e yi n a p r o g r a m

I N S T / D E Lk e y

D r a w i n g su s i n ga P R I N Ts t a t e m e n t

B y d e f i n i t i o nt h e r ei s a d i f f e r e n c eb e t w e e na c o m m a n da n da s t a t e m e n t ,b u tt h e

B A S I Ci n t e r p r e t e rd o e sn o td i s t i n g u i s hb e t w e e nt h e m .L a t e ri n t h eb o o kI w i l le x

p l a i n t h ed i f f e r e n c e s .F o rn o wy o u rs t u d e n tn e e d st o u n d e r s t a n dt h a tt h ep r o g r a m

i s s t o r e di n m e m o r ye v e nw h e ni t i s n o tv i s i b l eo n t h es c r e e n ,a n dt h a tL I S Tj u s t

l i s t st h ep r o g r a mt o t h es c r e e n .T h es p e c i a lu s e sl i k eL I S T1 0 0 - 3 0 0a n dL I S T - 3 0

w i l lb e t a k e nu p l a t e r .

C o m p u t e rm e m o r ya s a s h e l f o fb o x e si s a k e ym o d e lt h a tw e w i l ld e v e l o pi n t h i s

b o o k .I t i sa n i m p o r t a n tt o o li n h e l p i n gt h es t u d e n tu n d e r s t a n dv a r i a b l e sa n dt h e

d e t a i l e dw o r k i n g so f c o m p l i c a t e de x p r e s s i o n si n a s t a t e m e n t .

U s i n gP R I N Tt o d r a wp i c t u r e si s d e m o n s t r a t e d .I t i s b e t t e rt o d r a ws o m ea t t h e

e n do f e a c hl e s s o nt h a nt o d o a l o tn o w .A f t e rl e s s o n4 , d r a w i n gh e l p sd e v e l o p

l i n e - e d i t i n gs k i l l s .

\ Q u e s t i o n s :

1 . H o wd o y o ue r a s ea l i n ey o un o l o n g e rw a n t ?

2 . P r e s sC L R / H O M E .N o w ,h o wd o y o us h o wa l l o f t h ep r o g r a mi n m e m o r yo n

t h es c r e e n ?

1 7

Page 32: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 32/306

3 . H o wc a ny o ur e p l a c ea w r o n gl i n ew i t ha c o r r e c t e do n e ?

4 . S u p p o s ey o u w a n tt o p u ta l i n ei n b e t w e e nt w ol i n e sy o ua l r e a d yh a v ei n m e m

o r y .H o wd o y o u d ot h i s ?

5 . E x p l a i nh o wt h ec o m p u t e rp u t sp r o g r a ml i n e si n " b o x e s "i n m e m o r y .W h a t

d o e si t w r i t eo n t h ef r o n to f t h eb o x ?

6 . H o wd o y o um a k ea p r o g r a mc l e a rt h e s c r e e nw h e ni t s t a r t s ?

1 8

Page 33: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 33/306

L e s s o n3 . L I S T ,B o x e si n M e m o r y

C l e a rt h es c r e e na n de r a s e t h em e m o r y .

( S t a r te a c hl e s s o nb y c l e a r i n gs c r e e na n dm e m o r y . )

N o we n t e r :

1 0 R E MH O U S E

2 0 P R I N T" C O M EO N O V E R "

R u nt h i st w o - l i n ep r o g r a m .T h e nc l e a rt h es c r e e n .

T h ep r o g r a mi s g o n ef r o mt h es c r e e n .

B u tt h ep r o g r a mi s n o tl o s t .I t w a ss t o r e di n t h ec o m p u t e r ' sm e m o r y .W ec a na s k

t h ec o m p u t e rt o s h o wu s t h ep r o g r a ma g a i n .

L i s t i n gt h eP r o g r a m

M a k et h ec o m p u t e rs h o wy o ut h ew h o l ep r o g r a m .

E n t e r : L I S T

T o m a k et h ec o m p u t e rs h o wy o uj u s to n el i n eo f

t h ep r o g r a m ,e n t e rL I S Tf o l l o w e db y t h en u m b e r

o f t h el i n e ,l i k et h i s :

L I S T 2 0

1 9

Page 34: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 34/306

T h eM e m o r y

T h ec o m p u t e r ' sm e m o r yi s l i k ea s h e l f o fb o x e s .T h e r ei s a s p o to n t h ef r o n to f

e a c hb o xt o w r i t ei t sn a m e .A t t h es t a r t ,a l l t h eb o x e sa r ee m p t ya n dn o b o xh a sa

n a m e .

W h e ny o ue n t e r e d : 1 0 r e mh o u s e

t h ec o m p u t e rt o o kt h ef i r s te m p t yb o x a n dw r o t et h en a m eL i n e1 0 o n t h ef r o n t .

T h e ni t p u tt h es t a t e m e n tR E MH O U S Ei n t h eb o x a n dp u tt h eb o xb a c ko n t h e

s h e l f .

W h e ny o ue n t e r e d : 2 0 p r i n t" c o m eo n o v e r "

t h ec o m p u t e rt o o kt h es e c o n db o xa n dw r o t eL i n e2 0 o n i t s l a b e l .T h e ni t p u tt h e

s t a t e m e n tP R I N T" C O M EO NO V E R "i n t h eb o xa n dp u tt h a tb o xi n i t sp l a c eo n

t h es h e l f .

L I N E :1 0 1 U N E 2

E r a s i n ga L i n ef r o mM e m o r y

T o e r a s eo n el i n eo f t h ep r o g r a m ,e n t e r t h el i n en u m b e rw i t h n o t h i n ga f t e ri t .

T o e r a s el i n e 2 0 , e n t e r :2 0

Y o us t i l ls e et h el i n eo n t h es c r e e n ,b u td o a L I S Ta n dy o u ' l ls e et h a tl i n e2 0 i s

g o n ef r o mm e m o r y .

2 0

Page 35: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 35/306

W h e ny o ue n t e rj u s ta l i n en u m b e rw i t hn o t h i n ga f t e ri t , t h ec o m p u t e rf i n d st h e

b o xw i t ht h a tl i n en u m b e ro n i t , e m p t i e st h eb o x ,a n de r a s e s t h en a m ef r o mt h e

f r o n to f t h e b o x .

H o wd o y o ue r a s e t h ew h o l ep r o g r a m ?( S e e l e s s o n1 f o rt h ea n s w e ri f y o uf o r g o t . )

W h a td o e st h ec o m p u t e rd o t o t h eb o x e sw h e ny o ug i v ei t t h ec o m m a n dN E W ?

A d d i n ga L i n e

Y o uc a na d da n e wl i n ea n y w h e r ei n t h ep r o g r a m ,e v e nb e t w e e n t w oo l dl i n e s .

J u s tp i c ka l i n en u m b e rb e t w e e n t w oo l dl i n e s ,a n dt y p ey o u rl i n ei n . T h ec o m

p u t e rp u t si t i n t h ec o r r e c t p l a c e .

E n t e rN E Wa n dt h i s : 1 0 r e m m o r ea n dm o r e2 0 P R I N T" M O R EL I N E SW A N T E D "4 0 P R I N T" N O W "

L i s ti t a n dr u ni t . N o wa d dt h i sl i n e :

1 5 P R I N T" S T I L L "

2 1

Page 36: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 36/306

L i s ta n dr u ni t a g a i n .

F i x i n goL i n e

I f a l i n ei s w r o n g ,j u s tt y p ei t o v e ra g a i n .F o r e x a m p l e ,i n t h ea b o v ep r o g r a ml i n e

n u m b e r4 0 c a nb e c h a n g e db y e n t e r i n g :

4 0 P R I N T " D O G I E" r v u i T T P "

W h a td i dt h ec o m p u t e rd o t o t h eb o xn a m e dL i n e4 0 w h e ny o ue n t e r e dt h el i n e ?

2 2

Page 37: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 37/306

Page 38: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 38/306

S p a c e sa r ep a r t o f t h ed r a w i n g .W h e n e v e ry o us e eb r a c e s ,{ } ,i t s h o u l dt e l ly o u

s o m e t h i n gs p e c i a ln e e d st o b e d o n e .O n l i n e5 0 w h e r ei t s a y s{ 7 S P A C E S } ,p r e s s

t h es p a c e b a rs e v e nt i m e s .H e r ea r et h e k e y s t r o k e sf o rl i n e5 0 :

5 0 S P A C EP R I N TS P A C E" S P A C E0 S P A C ES P A C E S P A C E S P A S P A C ES P A C E S P A C E0 "

D o n ' tf o r g e tt h es p a c eo n l i n e3 0

A s s i g n m e n t3 :

1 . W h a tc o m m a n dw i l ll i s tl i n e1 0 o f a p r o g r a m ?

2 . H o wd o y o ut e l lt h ec o m p u t e rt o l i s tt h ew h o l ep r o g r a mo n t h es c r e e n ?

3 . W h a td o e st h ec o m p u t e rd o ( i fa n y t h i n g )w h e ni t s e e st h eR E Ms t a t e m e n t ?

4 . W h a td o e st h ec o m p u t e rp u ti n t h eb o x e so n i t s s h e l f ?

5 . U s eR E Ma n dP R I N Tt o d r a wt h r e ef l y i n gb i r d so n t h es c r e e n .

2 4

Page 39: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 39/306

_ I n s t r u c t o rN o t e s4 . T h eC u r s o rK e y sa n dD r a w i n gP i c t u r e

T h i sl e s s o nc o n c e r n st h eC R S Ra r r o wk e y s ,t h eg r a p h i c ss y m b o l so nm a n yk e y s ,a n dt h eC o m m o d o r ek e y .

— t T h ea r r o wk e y sa r eu s e di n m o v i n gt h e c u r s o rt o a n yp o i n to n t h es c r e e n .I n

p a r t i c u l a r ,m o v i n gt h ec u r s o ro n t oa n yp a r t o f al i n ea l l o w se d i t i n go f t h el i n e .

C h a r a c t e r si n a l i n ea r en o ta f f e c t e db y t h e c u r s o rm o v i n go v e rt h e m .W h e r e v e r

t h ec u r s o rs t o p s ,y o uc a nt y p ei n n e wc h a r a c t e r s .

F o rn o ww e w i l ln o tc o n s i d e rt h ei n s e r t i o no f c h a r a c t e r s ,o n l yt h e i rr e p l a c e m e n

b y o t h e r so r t h e i rd e l e t i o n .W h e na l l i s s a t i s f a c t o r y ,y o uc a ne n t e rt h el i n ei n t h e

c o m p u t e rb y p r e s s i n gR E T U R N .

Y o uc a ne v e n c h a n g et h el i n en u m b e r .T h i s a l l o w sy o ut o m o v ea l i n e t oa n o t h e r

n u m b e r .I t a l s oa l l o w sy o ut o m a k ec o p i e s o fa l i n e ,e i t h e re x a c tc o p i e so r s l i g h t l y

m o d i f i e dc o p i e s .

M o s tk e y sh a v e t w og r a p h i c ss y m b o l so n t h e m .T h e s ec a nb e p r i n t e do n t h e

s c r e e ni n t h ee d i tm o d e ,o r p r i n t e db y a p r o g r a m .O n a g i v e nk e y ,t h er i g h t

g r a p h i c ss y m b o li s s e l e c t e db y u s i n gt h eS H I F Tk e y ,a n dt h el e f tg r a p h i c ss y m b o l

b y u s i n ga s p e c i a lk e yc a l l e dt h eC o m m o d o r ek e y .

T h es c r e e nc a nb e g i v e na n yo f 1 6 d i f f e r e n tc o l o r sb y t h es t a t e m e n tP O K E

5 3 2 8 1 , C . ( Ci s a n u m b e rf r o m0 t o 1 5 . )T h ec h a n g es c r e e nc o l o rs t a t e m e n tc a nb e

g i v e ni n a p r o g r a ml i n e .

B e c a r e f u l t h a ty o u d on o tc h o o s ea s c r e e nc o l o r t h a ti s t h es a m ea s t h el e t t e r

c o l o r !T h ew r i t i n gw o u l dd i s a p p e a ru n t i ly o uc h a n g e d o n eo f t h ec o l o r s .I n f a c t ,

, t h i sc a nb e e x p l o i t e di n m a k i n g" i n v i s i b l ew r i t i n g . "W ew i l ld o t h i sa f t e rt h ed e l a y

l o o pi s i n t r o d u c e d .

Q u e s t i o n s :

1 . W h a ti s a c u r s o r ?W h a ti s i t g o o df o r ?

2 5

Page 40: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 40/306

=

2 . T y p et h es o l i db a l lc h a r a c t e ro n t h es c r e e n .W h a tk e y sd o y o u n e e dt o u s e ?

3 . T y p et h et r i a n g l eg r a p h i c sc h a r a c t e rt h a ta p p e a r so n t h es t a rk e y .W h a tk e y sd o

y o u n e e dt o u s e ?

4 . H a v ey o u rs t u d e n td e m o n s t r a t eh o wt o e d i ta l i n e .T h i si n c l u d e su s i n gt h ea r -

r o wk e y st o m o v et h e c u r s o rt o t h ei n t e r i o ro f t h el i n e ,m o d i f y i n gc h a r a c t e r s

t h e r e ,a n dp r e s s i n gR E T U R Nt o e n t e r t h el i n e .

5 . W h a th a p p e n si f y o uh o l dt h eI N S T / D E Lk e yd o w n ?

2 6

Page 41: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 41/306

L e s s o n4 . T h eC u r s o rK e y sa n d D r a w i n gP i c t u r e s

T h eC u r s o rI s a F l a s h i n gS q u a r e

T h el i t t l ef l a s h i n gs q u a r ei s c a l l e dt h eI N P U Tc u r s o r .I t s h o w sy o uw h e r et h en e x t

l e t t e ry o ut y p ew i l la p p e a ro n t h es c r e e n .

T h eA r r o w K e y s

F i n dt h et w oC R S Rk e y s .( C R S Rs t a n d sf o r c u r s o r . )

O n eC R S Rk e y h a sl e f ta n dr i g h ta r r o w s .

T h eo t h e rC R S Rk e y h a su p a n dd o w na r r o w s .

C R S R

T h e s ek e y sm o v et h ec u r s o r .

C a r e f u l !W ed o n o tm e a na n yo f t h e s ea r r o wk e y s :

< - t < >

I f y o up r e s s aC R S Rk e y ,t h e c u r s o rm o v e si n t h ed i r e c t i o no f t h el o w e r a r r o wo n

t h ek e y .

I f y o up r e s sS H I F Ta n da C R S Rk e y ,t h e c u r s o rm o v e si n t h ed i r e c t i o n o ft h et o p

a r r o wo n t h ek e y .

I f y o uh o l dd o w nt h ek e y ,t h e c u r s o rs t a r t sm o v i n gv e r yf a s t !

D o t h i s :U s et h ec u r s o ra r r o wk e y st o m o v et h ec u r s o rt o t h em i d d l eo f t h es c r e e n ,

t h e nt y p ey o u rn a m et h e r e .

N o wp u ta b o r d e ro f c o l o r e ds t a r s( * )a r o u n dy o u rn a m e .

2 7

Page 42: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 42/306

T h eG r a p h i c sC h a r a c t e r s

T h eC o m m o d o r ec o m p u t e rh a s 6 2g r a p h i c sc h a r a c t e r s .Y o us e et h e mi n l i t t l e

s q u a r e so n t h ef r o n to f m a n yk e y s .

T h e ya r ee a s yt o u s e .

F i r s tf i n dt h eS H I F Tk e y .N o wf i n dt h eC o m m o d o r ek e y .I t i s u n d e rt h e

R U N / S T O Pk e ya n dl o o k sl i k ea l a r g eC w i t ha f l a gf l y i n gf r o mi t s s i d e .

T o p r i n tg r a p h i c sc h a r a c t e r s :

H o l dd o w nt h eS H I F Tk e ya n dp r e s sa g r a p h i c sk e y .

T h ec h a r a c t e ro n t h er i g h tw i l lb e p u to n t h es c r e e n .

O r h o l dd o w nt h eC o m m o d o r ek e ya n dp r e s s ag r a p h i c sk e y .

T h ec h a r a c t e ro n t h el e f tw i l lb e p u to n t h es c r e e n .

( Y o ud o n o ts e e t h es q u a r et h a ti s o n t h ek e y .Y o uj u s ts e e t h ec h a r a c t e rt h a ti s i n

s i d et h es q u a r e . )

D o t h i s : U s et h eC R S Rk e y st o m o v et h e c u r s o rt o t h es c r e e nc e n t e ra n dd r a wa

t i n yr e ds q u a r e .( H i n t :U s et h e c o r n e rc h a r a c t e r s

t h a ta r eo n t h eO , P , ( 5 ) ,a n dL k e y s . )

N o wd r a wa l a r g eg r e e ns q u a r ea r o u n dt h e

r e ds q u a r e .( H i n t :U s et h ec h e c k e rc h a r a c t e r

o n t h e + k e y . )

F i x i n gM e s s e d - U pL i n e s

T h ec u r s o ra r r o wk e y s h e l py o uf i xe r r o r s i ny o u rt y p i n g .

E n t e r : 1 0 R E M Z R A G O N

2 8

Page 43: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 43/306

_i

U s et h eC R S Rk e y st o m o v et h ec u r s o ro n t ot h eZ .

T y p ea D i n s t e a d .

N o wt h el i n ei s c o r r e c t ,r e a d i n g :

1 0 R E MD R A G O N

P r e s sR E T U R Nt o s t o r et h ec o r r e c tl i n ei n t h em e m o r y .

T h eI N S e r T / D E L e t eK e y

T h eI N S T / D E Lk e yi s y o u re r a s e r .( D E Li s s h o r tf o r d e l e t e . )T r yt h i s :

2 0 P R I N T" h i t h e r w ( L e a v et h e c u r s o ra f t e rt h eW . )

O o p s !T h eW s h o u l db e a nE .

Y o uc a ne r a s et h eW b y p r e s s i n gt h e

I N S T / D E Lk e y .T h e nt y p ea n E .

D o y o us e ew h a ti s f u n n y ? T h a ti s r i g h t !

T h eI N S T / D E Lk e y d o e sn o t e r a s et h e

c h a r a c t e rt h a tt h ec u r s o ri s o n ,i t e r a s e s

t h eo n en e x tt o i t o n t h el e f t !

R u l e :T h eI N S T / D E Lk e y a l w a y se r a s e s t h e

c h a r a c t e rn e x tt o t h ec u r s o ro n t h e

l e f t .

r ,■ / /

S p e e d yE r a s i n g

H o l dd o w nt h eI N S T / D E Lk e y .T h ec u r s o rw h i z z e sa l o n g ,e r a s i n ga s i t g o e s .

C a r e f u l !Y o um a ye r a s em o r et h a ny o uw a n t !

2 9

Page 44: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 44/306

=

C o p y c a tL i n e s

E n t e r :

1 0 R E MT W I N S

2 0 P R I N T " M E E TM Y T W I N "

R u nt h ep r o g r a m .

L i s tt h ep r o g r a m .T h e nu s et h e c u r s o ra r r o wk e y st o m o v et h e c u r s o ro n t h e2 o f

l i n e2 0 .T y p e3 t h e np r e s s t h eR E T U R Nk e y .

N o wr u na n dl i s tt h ep r o g r a ma g a i n .L i n e2 0 h a sa t w i nl i n en a m e d3 0 .

C o l o r e d S c r e e n s

Y o uk n o wh o wt o c o l o rt h e s c r e e nb a c k g r o u n db l a c ko r w h i t e :

B l a c k : 1 0 P O K E5 3 2 8 1 , 0

W h i t e : 1 0 P O K E5 3 2 8 1 , 1

C h o o s ea n o t h e rc o l o rb y p i c k i n ga n o t h e rn u m b e ri n s t e a d o f0 o r 1 . A n yn u m b e r

f r o m0 t o 1 5 c a nb e u s e d .

E n t e r :

1 0 R E MR E DF L A S H

2 0 P R I N T " { W H T j H I T H E R E "3 0 P O K E 5 3 2 8 1 , 2

( D o y o ur e m e m b e r w h a tt o d o w h e ny o us e e" { W H T } " ? )

A s s i g n m e n t4 :

1 . T r ym a k i n gd i f f e r e n tc o l o r e ds c r e e n sa n dd i f f e r e n tc o l o r so f l e t t e r so n e a c h

s c r e e n .W h i c hc o m b i n a t i o n sl o o kb e s t ?

3 0

Page 45: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 45/306

2 . P r a c t i c eu s i n gt h eI N S T / D E La n dt h eC R S Rk e y s .T y p ea n df i xt h e s el i n e s :

1 0 R E MC A A A A A A T

1 0 R E MT T I I G G E E E R R R

3 . D r a wa s m i l e yf a c eo n a c o l o r e ds c r e e n .

4 . D r a wa v a l e n t i n e .U s el o t so f d i f f e r e n tg r a p h i c ss y m b o l s .

3 1

Page 46: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 46/306

= = = = = = = ^ ^

I n s t r u c t o rN o t e s5 . T r i c k sw i t hP R I N T

I n t h i sl e s s o n :

P R I N Tw i t ha s e m i c o l o na t t h ee n dP R I N Tw i t hs e m i c o l o n sb e t w e e ni t e m s

P R I N Tw i t hc o m m a sb e t w e e ni t e m sT h e" i n v i s i b l e "P R I N Tc u r s o r

C h a r a c t e r sa n ds t r i n gc o n s t a n t s

R e v i e wo f k e y s

T h el e s s o n i n t r o d u c e s t h eP R I N Tc u r s o rw h i c hi s i n v i s i b l eo n t h es c r e e n .I t m a r k s

t h e p l a c ew h e r et h e n e x tc h a r a c t e rw i l lb e p l a c e do n t h e s c r e e nb y a P R I N Ts t a t e

m e n t . ( T h eI N P U Tc u r s o ri s t h ef l a s h i n g s q u a r e .I t i s f a m i l i a rf r o mt h ee d i tm o d e

a n da l s oa p p e a r sw h e ne x e c u t i n g t h eI N P U Tc o m m a n d . )

W h e na P R I N Ts t a t e m e n te n d s w i t ha s e m i c o l o n ,t h eP R I N Tc u r s o rr e m a i n si n

p l a c ea t t h ee n do f t h el a s tp r i n t e dc h a r a c t e r .T h en e x tP R I N Tw i l ls t a r tw r i t i n g

c h a r a c t e r so n t ot h ee n do f t h em e s s a g ep r i n t e db y t h e c u r r e n tP R I N Ts t a t e m e n t

W i t h o u ta s e m i c o l o na t t h e e n d , t h eP R I N Ts t a t e m e n tw i l la d v a n c et h eP R I N T

c u r s o rt o t h eb e g i n n i n go f t h e n e x tl i n ea s i t s l a s to f f i c i a la c t .

A P R I N Ts t a t e m e n tc a np r i n ts e v e r a li t e m s ,a m i x t u r eo f s t r i n ga n dn u m e r i c a l

c o n s t a n t s ,v a r i a b l e s ,a n de x p r e s s i o n s .N u m e r i c a lc o n s t a n t sa n dv a r i a b l e sh a v en o t

y e tb e e ni n t r o d u c e d .T h ei t e m sa r es e p a r a t e db y s e m i c o l o n so r c o m m a s .

I f c o m m a sa r eu s e d , t h ei t e m sw i l lb e p r i n t e di n c o l u m n s .

A s e r i e so f p r i n t e ds t r i n g sw i l lh a v et h e i rc h a r a c t e r si n c o n t a c t .I f s p a c e sa r e

d e s i r e d , a s i nt h e" T o a s ta n d J a m "e x a m p l e ,t h es p a c e sh a v et o b e p u ti n t h e

s t r i n g se x p l i c i t l y .

3 2

Page 47: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 47/306

Q u e s t i o n s :

1 . W h i c hc u r s o ri s a l i t t l ef l a s h i n gs q u a r e ?W h a ts t a t e m e n tp u t si t o n t h e s c r e e n

2 . W h i c hc u r s o ri s i n v i s i b l e ?W h a ts t a t e m e n tu s e si t ?

3 . H o wd o y o um a k et w oP R I N Ts t a t e m e n t sp r i n to n t h es a m el i n e ?

4 . W i l l t h e s et w o w o r d s h a v ea s p a c eb e t w e e nt h e mw h e nr u n ?

1 0 P R I N T " H I " ; " T H E R EI "

I f n o t ,h o wd o y o up u ta s p a c eb e t w e e nt h e m( t w ow a y s ) ?

3 3

Page 48: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 48/306

Page 49: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 49/306

R u l e :T h es e m i c o l o nm a k e st h ei n v i s i b l eP R I N Tc u r s o rw a i ti n p l a c eo n t h e

s c r e e n .T h en e x tP R I N Ts t a t e m e n ta d d so n t o w h a th a sa l r e a d yb e e nw r i t t e no n

t h es a m el i n e .

|

F a m o u sP a i r s

T h eP R I N Ts t a t e m e n tc a np r i n ts e v e r a ls t r i n g s ,o n ea f t e ra n o t h e r .P u ts e m i c o l o n

( ; ) b e t w e e nt h es t r i n g s .L o o ka t l i n e8 0 b e l o w .

E n t e r :

1 0 R E MN A M E D R O P P I N G2 0 P R I N TM { C L R }E N T E RA N A M E "3 0 I N P U TA $4 0 P R I N T" E N T E RA N O T H E R "

5 0 I N P U TB $7 0 P R I N TM { C L R }P R E S E N T I N G T H A T F A M O U S T W O S O M E "

7 5 P R I N T8 0 P R I N TA $ ; "A N D" ; B $

3 5

Page 50: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 50/306

( R e m e m b e r , { C L R }m e a n sh o l dd o w nt h eS H I F Tk e ya n dp r e s st h e

C L R / H O M Ek e y . )T h eI N P U Ts t a t e m e n tw i l lb e e x p l a i n e di n t h en e x t

l e s s o n .

D o n ' tf o r g e tt o p u ta s p a c eb e f o r ea n da f t e rt h e" A N D" i n l i n e8 0 .

S q u a s h e dT o g e t h e ro r S p r e a dO u t ?

E n t e rN E W ,t h e nt r yt h i s :

1 0 P R I N T" R O C K " ; " A N D " ; " R O L L " ; " S T A R "

A f t e ry o uh a v er u ni t , t r ya l s o :

1 0 P R I N T" R O C K " , " A N D " , " R O L L " , " S T A R "

R u l e :A c o m m ab e t w e e ni t e m si n a P R I N Ts t a t e m e n tp u t s s p a c e sb e t w e e nt h e m

o n t h es c r e e n .

C h a r a c t e r s

L o o ka t t h e s eP R I N Ts t a t e m e n t s :

1 0 P R I N T" J O E "

1 0 P R I N T " # D 4 7 % % * % "1 0 P R I N T" 1 9 "1 0 P R I N T " 3 . 1 4 1 5 9 2 6 5 "1 0 P R I N T" I ' M1 4 "

L e t t e r s ,n u m b e r s ,a n dp u n c t u a t i o nm a r k sa r ec a l l e dc h a r a c t e r s .

E v e na b l a n ks p a c ei s a c h a r a c t e r .L o o ka t t h i s :

1 0 p r i n t" "

A l lt h el i t t l ed r a w i n g so n t h ef r o n t o ft h ek e y sa r ec h a r a c t e r s ,t o o .T h e ya r e c a l l e

g r a p h i c sc h a r a c t e r s .

3 6

Page 51: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 51/306

S t r i n gC o n s t a n t s

C h a r a c t e r si n a r o wm a k ea s t r i n g .

T h el e t t e r sa r e s t r e t c h e do u tl i k eb e a d so n a s t r i n g .

A s t r i n gb e t w e e nq u o t a t i o nm a r k si s c a l l e da s t r i n gc o n s t a n t

I t i s a s t r i n gb e c a u s ei t i s m a d eo f l e t t e r s ,n u m b e r s ,p u n c t u a t i o nm a r k s ,a n d

g r a p h i c sc h a r a c t e r si n a r o w .I t i s a c o n s t a n tb e c a u s ei t s t a y st h es a m e .I t d o e s n ' t

c h a n g ea s t h ep r o g r a mr u n s .

3 7

Page 52: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 52/306

A s s i g n m e n t5 :

1 . W r i t ea p r o g r a mt h a ta s k sf o rt h en a m eo f am u s i c a lg r o u pa n do n eo f t h e i r

t u n e s .T h e nu s i n gj u s to n eP R I N Ts t a t e m e n t ,p r i n tt h eg r o u pn a m ea n dt h e

t u n en a m e ,w i t ht h ew o r dp l a y si n b e t w e e n .

2 . D o t h es a m e , b u t u s et h r e eP R I N Ts t a t e m e n t st o p r i n to n o n el i n e .

3 . W r i t ea p r o g r a mt h a ta s k s t h e u s e rf o rt h r e ew o r d s .( U s et h r e eI N P U Ts t a t e

m e n t s . )T h e np r i n tt h e mo n o n el i n ew i t hs p a c e sb e t w e e nt h e m .( U s eP R I N T

w i t hc o m m a s . )

3 8

Page 53: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 53/306

I n s t r u c t o rN o t e s6 . T h eI N P U TS t a t e m e n t

T h i sl e s s o nc o n c e r n st h eI N P U Ts t a t e m e n t , t h ec o n c e p to f a s t r i n gv a r i a b l e ,a n dt h ed i f f e r e n c eb e t w e e na p r o g r a m m e ra n da u s e r .

I n i t s s i m p l e s tf o r m ,I N P U TA $ ,t h e r ei s n o m e s s a g ei n q u o t e si n f r o n t .W ew a n t

t h e s t u d e n tt o c o n c e n t r a t eo n t h ec e n t r a lf e a t u r e o fa n I N P U T .

S i m i l a r l y ,w e w i l lg i v eo n l yt h ee s s e n t i a lf e a t u r eo f e a c hs t a t e m e n tf o rt h ef i r s t

s e c t i o n o ft h eb o o k( t h r o u g hl e s s o n1 4 ) .W ew a n tt h es t u d e n tt o s e e t h ef o r e s t

b e f o r eg o i n gi n t od e t a i l s .T h ei n t e r e s t i n gp r o g r a m sr e q u i r e :

P R I N T A l l o w s o u t p u t

I N P U T i n p u t

G O T O i n f i n i t el o o p i n g

I F b r a n c h i n ga n dd e c i s i o n s

R N D r a n d o mn u m b e r sf o rg a m e s

T h eb o xc o n c e p ti s u s e da g a i nt o i n t r o d u c es t r i n g v a r i a b l e s .F o rt h et i m eb e i n g ,

v a r i a b l en a m e sa r er e s t r i c t e d t oo n el e t t e r .T h i sa l l o w sf a s t e rt y p i n ga n dp u t so f f

d i s c u s s i o n o f t h ec o m p l i c a t e dn a m i n gr u l e s u n t i la f t e ro u rs p r i n t t ot h eR N D

f u n c t i o n .

W ew i l lw o r kw i t hs t r i n g sb e f o r en u m b e r s ,b e c a u s es t r i n g sm a k ef o rm o r ei n

t e r e s t i n gp r o g r a m sa n do f f e ra l e s sc o n f u s i n ge n t r yi n t ot h el o g i c a lc o n c e p t so f

p r o g r a m m i n g .

T h e" t w oh a t s "o f t h es t u d e n t — p r o g r a m m e r a n du s e ro f t h ep r o g r a m — c a u s

m u c hc o n f u s i o na t a s s i g n m e n tt i m e .P R I N Ti s t h ep r o g r a m m e rs p e a k i n g ,w h i l e

t h eu s e r ' sc o m m e n t sa r em a d eo n l yi n r e s p o n s et o a n I N P U Ts t a t e m e n ta n da r e

s t o r e di n a s t r i n gv a r i a b l et o b e u s e do r p r i n t e db y t h ec o m p u t e r .

Q u e s t i o n s :

1 . W h a tt w od i f f e r e n tt h i n g sd o e st h ec o m p u t e rp u ti n b o x e s ?( O n ea t p r o g r a m

m i n gt i m ea n do n e f r o ma n I N P U T . )

3 9

Page 54: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 54/306

2 . H o wd o e st h ep r o g r a ma s ka u s e rt o t y p ei n s o m e t h i n g ?

3 . H o wd o y o uk n o wt h ec o m p u t e ri s w a i t i n gf o ra n a n s w e r ?

4 . W h a ti s a l e t t e rw i t ha d o l l a rs i g na f t e ri t c a l l e d ?

5 . W r i t ea s h o r tp r o g r a mt h a tu s e sR E M ,P R I N T ,a n d I N P U T .

6 . A r ey o ui n t r o u b l ei f t h ec o m p u t e ra n s w e r s? E X T R AI G N O R E Da f t e ra n i n p u t ?

W h a t m a d ei t d o t h a t ?

4 0

Page 55: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 55/306

L e s s o n6 . T h eI N P U TS t a t e m e n t

U s eI N P U Tt o m a k et h ec o m p u t e ra s kf o rs o m e t h i n g .

E n t e r :

1 0 R E MT A L K Y - T A L K

1 5 P R I N T" { C L R } 1 12 0 P R I N T" S A YS O M E T H I N G "

2 5 I N P U TA $3 0 P R I N T3 5 P R I N T" D I DY O US A Y "

4 0 P R I N TA $

R u ni t . W h e ny o us e ea q u e s t i o nm a r k ,t y p eH I a n dp r e s st h eR E T U R Nk e y .

T h eq u e s t i o nm a r kw a sw r i t t e nb y I N P U Ti n l i n e 2 5 .T h ef l a s h i n g c u r s o rm e a n s

t h ec o m p u t e re x p e c t sy o ut o t y p es o m e t h i n gi n .

W h e ny o ue n t e rH I ,t h ec o m p u t e rs t o r e st h i sw o r di n a b o xn a m e dA $ .

L a t e r , i nl i n e4 0 ,t h ep r o g r a ma s k s t h ec o m p u t e rt o p r i n tw h a t e v e ri s i n t h eb o x

n a m e dA $ .

R u nt h ep r o g r a ma g a i na n dt h i st i m e s a ys o m e t h i n gf u n n y .

S t r i n gV a r i a b l e s

A $ i s t h en a m eo f as t r i n gv a r i a b l e .

T h ec o m p u t e rs t o r e ss t r i n gv a r i a b l e si n m e m -„

o r yb o x e sj u s tl i k et h eb o x e si t p u t s

p r o g r a ml i n e si n . T h en a m ei s w r i t t e no n

t h ef r o n to f t h eb o xa n dt h es t r i n gi s

p u ti n s i d et h e b o x .

4 1

Page 56: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 56/306

R u l e :A s t r i n gv a r i a b l en a m ee n d si n a d o l l a rs i g n( $ ) .Y o uc a nu s ea n yl e t t e ry o u

l i k ef o rt h en a m ea n dt h e np u ta d o l l a rs i g na f t e ri t .

A $ i s c a l l e da v a r i a b l eb e c a u s ey o uc a np u td i f f e r e n t s t r i n g s i nt h eb o xa t d i f f e r e n

t i m e si n t h ep r o g r a m .T h eb o xc a nh o l do n l yo n es t r i n ga t a t i m e .P u t t i n ga n e w

s t r i n g i na b o xe r a s e st h e o l ds t r i n gt h a tw a si n t h e b o x .

E r r o rM e s s a g e sf r o mI N P U T

R u nt h i st h r e et i m e s :

1 0 I N P U TA $2 0 P R I N T" " ; A $

T r yt h e s ea n s w e r s :

H I

H I ,T H E R E

H I : 1 S 3

R u l e :D o n o tp u ta n yc o m m a so r c o l o n si n t h es t r i n gy o ut y p ei n a n s w e rt o t h e

c o m p u t e r .

I f y o ua c c i d e n t a l l yd o p u to n ei n , t h ec o m p u t e rm a ya n s w e r :

? E X T R AI G N O R E D

a n dc o n t i n u e .T h i sm e a n st h a tt h ec o m p u t e r c h o p p e do f fe v e r y t h i n ga f t e rt h e

c o m m ao r c o l o na n dt h e n c o n t i n u e dr u n n i n gt h ep r o g r a m .

4 2

Page 57: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 57/306

Y o uW e a rT w oH a t s — U s e ra n dP r o g r a m m e r

Y o ua r ea p r o g r a m m e rw h e ny o uw r i t ea p r o g r a m .T h ep e r s o nw h or u n st h ep r o

g r a mi s a u s e r .

O f c o u r s e ,i f y o ur u n y o u ro w np r o g r a mt h e n y o ua r et h eu s e r .

W h e nt h ep r o g r a m m e rw r i t e s aP R I N Ts t a t e m e n t ,t h ep r o g r a m m e ri s s p e a k i n gt o

t h e u s e rb y w r i t i n go n t h es c r e e n .

W h e nt h ep r o g r a m m e rw r i t e sa n I N P U Ts t a t e m e n t , t h ep r o g r a m m e ri s a s k i n gt h e

u s e rt o s a ys o m e t h i n gt o t h ec o m p u t e r .

I t i s l i k ea g a m eo f " M a yI ? "T h eo n l yt i m et h e u s e rg e t st o s a ys o m e t h i n gi sw h e nt h ep r o g r a m m e ra l l o w si t b y w r i t i n ga n I N P U Ts t a t e m e n ti n t h ep r o g r a m .

A s s i g n m e n t6 :

1 . W r i t ea p r o g r a mt h a ta s k sf o rt h eu s e r ' sn a m ea n dt h e ns a y ss o m e t h i n gs i l l yt ot h ep e r s o nb y n a m e .

2 . W r i t ea p r o g r a mt h a tf i r s ta s k sf o rt h et h eu s e r ' s f a v o r i t ec o l o r — p u ti t i n ab o x

c a l l e dC $ — t h e na s k sf o ra f a v o r i t ea n i m a l — p u tt h i si n b o xC $ a l s o .H a v et h e

p r o g r a mP R I N TC $ .W h a tw i l lb e p r i n t e d ?R u nt h ep r o g r a ma n ds e ei f y o ua r e

r i g h t .

4 3

Page 58: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 58/306

= = = = = = = = = = = ^ ^

I n s t r u c t o rN o t e s7 . T h eL E TS t a t e m e n t ,G l u i n gS t r i n g s

T h eL E Ts t a t e m e n ta n dc o n c a t e n a t i o na r ei n t r o d u c e d .

C o n c a t e n a t i o no f s t r i n g sg l u e ss t r i n g st o g e t h e rt o m a k ea n e ws t r i n g .

T h eb o xm o d e li s u s e dt o e m p h a s i z et h a tL E Ti s a r e p l a c e m e n ts t a t e m e n t , n o ta n

e q u a lr e l a t i o n s h i pi n t h es e n s eu s e di n a r i t h m e t i c .

T h eb o xi d e a n i c e l y s e p a r a t e s t h ec o n c e p t sn a m eo f t h e v a r i a b l ea n dv a l u e o f t h e

v a r i a b l e .T h en a m ei s o n t h el a b e lo f t h eb o x ,t h ev a l u ei s i n s i d e .T h ec o n t e n t so f

t h eb o xm a yb e r e m o v e df o r u s e .M o r ee x a c t l y ,a c o p yo f t h e c o n t e n t si s m a d e

a n du s e dw h e na v a r i a b l ei s u s e d ,w h i l et h eo r i g i n a lc o n t e n t sr e m a i ni n t a c t .T h i s

p o i n ti s e x p l a i n e d .W h e nL E Tp u t sn e wc o n t e n t si n a b o x , t h e o l d c o n t e n t sa r e

a u t o m a t i c a l l ye r a s e df i r s t .

S t a t e m e n t su s e ds o f a r :

N E W ,P R I N T ,R E M ,R U N ,L I S T ,I N P U T ,L E T

S p e c i a lk e y sd i s c u s s e ds o f a r :

R E T U R N ,C R S Ra r r o w s ,S H I F T ,C L R / H O M E ,C T R L ,I N S T / D E L ,a n dt h eC o m

m o d o r ek e y .

Q u e s t i o n s :

1 . L E Tp u t st h i n g si n b o x e s .S o d o e sI N P U T .H o wa r et h e yd i f f e r e n t ?

2 . I fy o ur u nt h i sl i t t l ep r o g r a m

1 0 L E TA $ = " H I "

2 0 L E TB $ = A $

w h a tw i l lb e i n b o xA $a t t h ee n d ?W h a tw i l lb e i n b o xB $ ?

4 4

Page 59: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 59/306

3 . I n t h i sp r o g r a m\

1 0 L E T Q $ = " M O M "

\

} w h a ti s " M O M "c a l l e d ?W h a ti s t h en a m eo f t h es t r i n gv a r i a b l ei n t h i sp r o

g r a m ?W h a ti s t h ev a l u eo f t h es t r i n gv a r i a b l ea f t e rt h ep r o g r a mr u n s ?

4 . W h a ti s i n e a c hb o xa f t e rt h i sp r o g r a mr u n s ?

1 0 L E TH $ = " F A T 1 1

2 0 L E TK $ = " S A U S A G E "3 0 L E TP $ = H $ + K $

4 5

Page 60: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 60/306

L e s s o n7 . T h eL E TS t a t e m e n t ,G l u i n gS t r i n g s

T h eL E Ts t a t e m e n tp u t st h i n g si n b o x e s .E n t e ra n dr u n :

1 0 P R I N T" { C L R } "2 0 L E TW $ = " T R U C K "

4 0 P R I N TW $

H e r ei s w h a tt h ec o m p u t e rd o e s :

L i n e 1 0T h ec o m p u t e rc l e a r st h es c r e e n .

L i n e2 0 I t s e e st h a ta b o xn a m e dW $i s n e e d e d .I t l o o k si n i t s m e m o r yf o ri t . I t

d o e s n ' tf i n do n e ,b e c a u s eW $h a s n o tb e e nu s e di n t h i sp r o g r a mb e f o r e .

S o i t t a k e sa n e m p t yb o xa n dw r i t e sW $o n t h ef r o n t ,a n dt h e np u t st h e

s t r i n g" T R U C K "i n i t .

L i n e4 0 T h ec o m p u t e rs e e st h a ti t m u s tp r i n tw h a t e v e ri s i n b o xW $ .I t g o e st o

t h eb o xa n d m a k e sa c o p yo f t h es t r i n g" T R U C K "t h a ti t f i n d st h e r e .I t

p u t s t h ec o p yo n t h eT Vs c r e e n .T h es t r i n g" T R U C K "i s s t i l li n b o xW $ .

4 6

Page 61: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 61/306

N a m e sa n dV a l u e s

T h i sl i n em a k e sa s t r i n g v a r i a b l e :

1 0 L E TW $ = " M O P S E Y "

T h en a m eo f t h ev a r i a b l ei s W $ .

T h ev a l u eo f t h ev a r i a b l ei s p u ti n t h e b o x .

I n t h i sl i n e ,t h e v a l u eo f W $i s " M O P S E Y " .

A n o t h e rE x a m p l e

E n t e ra n dr u n :

1 0 L E TD $ = " P I C K L E S "2 0 L E TA $ = "A N D"

3 0 P R I N T" W H A TG O E SW I T HP I C K L E S ? 13 5 I N P U TZ $

4 0 P R I N T" { C L R } "5 0 P R I N T D $ ; A $ ; Z $

4 7

Page 62: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 62/306

E x p l a i nw h a tt h ec o m p u t e rd o e si n e a c hl i n e .

1 0

2 0

3 0

3 5

4 0

5 0

G l u i n gt h eS t r i n g s

H e r ei s h o wt o s t i c kt w os t r i n g st o g e t h e rt o m a k ea l o n g e rs t r i n g .

E n t e r :

1 0 P R I N T" { C L R } "2 0 L E TW $ = " H A RD E "

2 5 L E TX $ = " H A R"

3 0 L E TA $ = W $ + X $4 0 P R I N TA $5 0 P R I N T

6 0 L E TA $ = A $ + X $7 0 P R I N TA $

4 8

Page 63: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 63/306

B e f o r ey o ur u nt h i sp r o g r a m ,t r yt o g u e s sw h a tw i l lb e p r i n t e da t l i n e4 0 a n da t

l i n e7 0 :

4 0

7 0

N o wr u nt h ep r o g r a mt o s e ei f y o uw e r er i g h t .

L i n e s3 0 a n d6 0 g l u es t r i n g st o g e t h e r .

R u l e :T h e+ s i g ns t i c k st w os t r i n g st o g e t h e r .

A s s i g n m e n t7 :

1 . W r i t ey o u ro w np r o g r a mt h a tu s e st h eL E Ts t a t e m e n ta n de x p l a i nh o wi t s t o r e s

t h i n g si n b o x e s .

2 . W r i t ea p r o g r a mt h a ti n p u t st w os t r i n g s ,g l u e st h e mt o g e t h e r ,a n dt h e np r i n t s

t h e m .

4 9

Page 64: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 64/306

I n s t r u c t o rN o t e s8 . T h eG O T OS t a t e m e n ta n dt h eR U N / S T O PK e y

T h eG O T Os t a t e m e n ta l l o w sl o o p st h a tg o o n f o r e v e r .I t a l s oh e l p si n f l o wo f

s t a t e m e n te x e c u t i o no n c ew e i n t r o d u c et h eI F s t a t e m e n t .I t p r o v i d e sa s l o wa n d

e a s ye n t r a n c ef o rt h es t u d e n ti n t ot h ei d e at h a tt h ef l o wo f a p r o g r a mn e e dn o tg o

d o w nt h el i s to f n u m b e r e dl i n e s .

F o rn o wi t s m a i nu s ei s t o l e tp r o g r a m sr u no n f o ra r e a s o n a b l e l e n g t ho f t i m e . I

e a c hl o o pt h r o u g h ,s o m e t h i n gc a nb e m o d i f i e d .

T h ep r o b l e mi s h o wt o s t o pi t . T h eR U N / S T O Pk e y d o e st h i s n i c e l y .S o m e t i m ep r e s s i n g t h eR U N / S T O Pk e ym a yn o ti n f a c ts t o pt h ep r o g r a m .F o r e x a m p l e ,i f

t h ep r o g r a mr e a c h e da n I N P U Ts t a t e m e n t( a n ds h o w st h e q u e s t i o nm a r ka n d

f l a s h i n gc u r s o r ) ,p r e s s i n gR U N / S T O Pd o e s n o ts t o p t h ep r o g r a m . T r yt h i s .H o l d

R U N / S T O Pd o w na n dt h e np r e s st h eR E S T O R Ek e y o n c eo r t w i c e .

G O T Oa l l o w s t h eb a dh a b i to f " s p a g h e t t i "p r o g r a m m i n gt o g r o w .E x a m p l e so f

s p a g h e t t ia r es h o w nt o t h es t u d e n t .A l t h o u g hs o m ef u ni s h a dw i t h t h e m ,m a k e

s u r e t h es t u d e n ti s c o n s c i o u so f t h ep r o b l e m st h a tu n d i s c i p l i n e du s eo f G O T O

c a n c a u s e .

W en o wh a v et h r e eo f t h e f o u rm a j o re l e m e n t st h a tl e a dt o m e a n i n g f u lp r o g r a m

m i n g .T h e ya r eP R I N T ,I N P U T , a n dG O T O .L a c k i n gi s t h eI F s t a t e m e n t ,w h i c h

w i l lc h a n g et h ec o m p u t e r f r o mo n l ya r e c o r d p l a y e ri n t oa m a c h i n et h a tc a ne v a l

u a t es i t u a t i o n sa n dm a k ed e c i s i o n s a c c o r d i n g l y .

5 0

Page 65: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 65/306

Q u e s t i o n s :

I 1 . I n t h i sl i t t l ep r o g r a m :

1 0 P R I N T" H I "2 0 G O T O4 0

i 3 0 P R I N T" B I G "4 0 P R I N T" D A D D Y 1 1

w h a tw i l la p p e a ro n t h e s c r e e nw h e ni t i s r u n ?

2 . W h a ta b o u tt h i so n e :

1 0 P R I N T " A P P L E "

2 0 P R I N T" P I E " ;

3 0 G O T O2 0

3 . H o wd o y o us t o pt h ep r o g r a mi n q u e s t i o n2 ?

4 . W r i t ea s h o r tp r o g r a mt h a ta s k sy o u rf a v o r i t em o v i es t a r ' sn a m ea n dt h e n

P R I N T si t o v e ra n do v e ra g a i n .

5 1

Page 66: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 66/306

L e s s o n8 . T h eG O T OS t a t e m e n ta n dt h e R U N / S T O PK e y

J u m p i n gA r o u n dI n Y o u rP r o g r a mT r yt h i sp r o g r a m :

1 0 P R I N T" { C L R } 1 12 0 P R I N T" Y O U RN A M E ? "2 5 I N P U TN $3 0 P R I N TN $3 5 P R I N T

4 0 G O T O3 0

R u nt h i sp r o g r a m .I t n e v e rs t o p sb y i t s e l f !T o s t o py o u rn a m ef r o mw h i z z i n gp a s t

y o u re y e s ,p r e s s t h eR U N / S T O Pk e y .( I t ' so n t h el e f ts i d eo f t h ek e y b o a r d . )

L i n e4 0 u s e st h eG O T Os t a t e m e n t .I t i s l i k e" G ot o J a i l "i n a g a m eo f M o n o p o l y

E v e r yt i m et h ec o m p u t e rr e a c h e sl i n e4 0 ,i t h a st o g o b a c kt o l i n e3 0 a n dp r i n t

y o u rn a m ea g a i n .

W ew i l lu s eG O T Oo f t e ni n p r o g r a m s .

5 2

Page 67: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 67/306

M o r eJ u m p i n g

E n t e r :

2 0 P R I N T" S A YS O M E T H I N G "

3 0 I N P U TS $

4 0 P R I N T" D I DY O U S A Y ' " ; S $ ; " ' ? "

4 5 P R I N T

5 0 G O T O3 0

R u nt h ep r o g r a m .T y p ea n a n s w e re v e r y t i m ey o us e et h e? a n dt h ef l a s h i n g

c u r s o r .P r e s s t h eR U N / S T O Pk e yt o e n dt h ep r o g r a m .

N o t i c et h ea r r o wf r o ml i n e5 0 t o l i n e3 0 .I t s h o w s w h a tt h eG O T Od o e s .Y o um a y

w a n tt o d r a ws u c ha r r o w si n y o u rp r o g r a ml i s t i n g s .

K i n d so f J u m p s

T h e r ea r eo n l yt w ow a y st o j u m p :a h e a do r b a c k

J u m p i n gb a c kg i v e s al o o p .

1 0 P R I N T" H I "

2 0 G O T O1 0

5 3

Page 68: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 68/306

' '

T h ep a t ht h r o u g ht h ep r o g r a mi s l i k et h i s :

1 0 P R I N T" H I 1 ^

2 0 G O T O1 0 )

T h ec o m p u t e rg o e sa r o u n da n da r o u n di n t h i sl o o p .P r e s s t h eR U N / S T O Pk e yt o

s t o p .

J u m p i n ga h e a ds k i p sp a r t o ft h ep r o g r a m .W h a t e v e rf o r ?W ew i l ls e el a t e ri n t h e

I F s t a t e m e n t .

T h eR U N / S T O PK e y

T h eR U N / S T O Pk e yi s a l i f e s a v e r .W h e ny o ua r ei n t r o u b l e ,p r e s sR U N / S T O P

a n dt h ec o m p u t e rw i l ls t o pr u n n i n gt h ep r o g r a ma n dw a i tf o ry o u rn e x tc o m

m a n d .Y o u rp r o g r a mi s s t i l ls a f e i nm e m o r y .

I f y o ua r ei n r e a l l yb i gt r o u b l e ,p r e s s t h eR U N / S T O Pk e ya n da t t h es a m et i m e

p r e s sR E S T O R E .T h ec o m p u t e rd o e sa w a r ms t a r tY o u rp r o g r a mi s s t i l ls a f e i n

m e m o r y .

5 4

Page 69: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 69/306

A C a no f S p a g h e t t i

L o o ka t t h i s :

1 0 r e m - S P A G H E T T I -

\

2 0 G O T O7 0I

2 5 P R I N TM A "

2 6 G O T O5 0

( 3 0 P R I N T" S "

3 1 G O T O2 5

4 0 P R I N T" C "

4 1 G O T O9 0

5 0 P R I N T" U "

i

5 1 G O T O4 0

7 0 P R I N T" S P A G H E T T I"

I

7 1 G O T O3 0

I

9 0 P R I N T" E "

9 5 R E M E N D

1 0 0 P R I N T" W H E W l "

5 5

Page 70: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 70/306

"

T h i si s n o ta g o o d ,c l e a rp r o g r a m .

I t i s a " s p a g h e t t i "p r o g r a m .

D o n ' tw r i t es p a g h e t t ip r o g r a m s ! D o n ' tj u m pa r o u n dt o om u c hi n y o u rp r o g r a m s .

T h eI N S e r T / D E L e t eK e y

I N S Ts t a n d sf o rI N S e r Tw h i c hm e a n s" p u ti n . "

W h e ny o uh o l dd o w nS H I F Ta n dp r e s st h eI N S T / D E Lk e y ,t h ec o m p u t e rs t i c k si n

a s p a c et o t h el e f to f t h ec u r s o r ,a n dt h e nm o v e st h e c u r s o ro n t oi t . T r yt h i s :

2 0 P R I N T" W H I C H U P ? "

N o wu s et h eC R S Ra r r o w st o m o v et h ec u r s o ro n t ot h eU . H o l dd o w nt h eS H I F T

k e ya n dp r e s st h eI N S T / D E Lk e yf o u rt i m e s .T h e nt y p eW A Y .

I N S e r Ti s t h eo p p o s i t eo f D E L e t e .A f t e ry o uh a v ei n s e r t e da s p a c e ,y o um a yt y p e

a l e t t e ri n t oi t .

I f y o uh o l dd o w nt h eS H I F Ta n dI N S T / D E Lk e y s ,t h e c u r s o rw h i z z e sa l o n ga n d

i n s e r t sa l o t o f s p a c e s .

T h eI N S e r T / D E L e t eK e yG o e sC r a z y

A f t e ri n s e r t i n gs p a c e si n a l i n e ,y o um a yt y p el e t t e r s ,n u m b e r s ,p u n c t u a t i o n ,a n d

g r a p h i c si n t ot h e s p a c e sa n dt h e yw i l la p p e a ro n t h es c r e e n .B u ti f y o up r e s s t h e

C R S R ,C L R / H O M E ,I N S T / D E L ,o r c o l o rk e y s ,y o uw i l ls e ef u n n yc h a r a c t e r so n

t h es c r e e n .

5 6

Page 71: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 71/306

A s s i g n m e n t8 :

1 . J u s tf o rp r a c t i c e i nu n d e r s t a n d i n gt h eG O T Os t a t e m e n t ,d r a wt h er o a dm a pf o r

t h i ss p a g h e t t ip r o g r a m :

1 0 R E M> > > F O R K E D T O N G U E > > >

2 0 G O T O4 0

3 0 P R I N T" N "

3 1 G O T O6 0

4 0 P R I N T" S "

4 1 G O T O3 0

5 0 P R I N T" E "

5 1 G O T O9 9

6 0 P R I N T" A "

9 0 P R I N T" K "

9 1 G O T O5 0

9 9 P R I N T" B I T E "

2 . W r i t ea p r o g r a mt h a t p r i n t sT E E NP O W E Ro v e ra n do v e r .

5 7

Page 72: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 72/306

3 . H o wd o y o us t o py o u rp r o g r a m ?

4 . W r i t e a n o t h e rt h a t p r i n t sy o u rn a m eo n o n el i n e ,t h e na f r i e n d ' sn a m eo n t h e

n e x t ,o v e ra n do v e r . P r i n te a c hn a m ei n a d i f f e r e n tc o l o r .S t o pt h ep r o g r a m

w i t ht h eR U N / S T O Pk e y .

5 . W r i t ea p r o g r a mt h a tu s e se a c ho f t h e s e s t a t e m e n t s :P R I N T ,I N P U T ,L E T ,

G O T O .I t s h o u l da l s og l u et w os t r i n g st o g e t h e ra n du s et w oc o l o r s o fl e t t e r s .

5 8

Page 73: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 73/306

I n s t r u c t o rN o t e s9 . T h eI F S t a t e m e n t

T h i sl e s s o ni n t r o d u c e st h eI F s t a t e m e n ta n dt r e a t st h eq u e s t i o no f w h e t h e r t w o

s t r i n g sa r et h es a m eo r n o t .

I F i s a p o w e r f u l s t a t e m e n tt h a ti s a t t h ev e r yh e a r to f t h ec o m p u t e ra s a l o g i c

m a c h i n e .I t i s a n i n t r i c a t es t a t e m e n ta n dt h e s t u d e n tm a yn e e de x t r ah e l pa t t h i s

p o i n t .

T h eI F s t a t e m e n t a p p e a l sb o t ht o o u rv e r b a la n dv i s u a li m a g i n a t i o n .T h e" c a k e "

c a r t o o na n dt h e " f o r ki n t h er o a d "c a r t o o ni l l u s t r a t et h e s ei d e a s .T h eG O T Os t a t e

m e n th a sa l r e a d yi n t r o d u c e dt h e i d e at h a tt h ef l o wo f ap r o g r a mc a nb e a l t e r e d .

T o t h a ti d e aw e c a nn o wa d dt h e c o n d i t i o n a lt e s t : I fa n e x p r e s s i o ni s t r u e ,o n e

t h i n gh a p p e n s ;i f i t i s f a l s e ,a n o t h e r .

P h r a s eA i s u s e df o rt h ea s s e r t i o nb e i n gt e s t e df o rt r u t h .S t a t e m e n tC i s u s e df o r

t h es t a t e m e n tt o b e d o n ei f t h ea s s e r t i o ni s t r u e .

T w ol e v e l so f a b s t r a c ti d e a so c c u ri n t h ea s s e r t i o n s .O n t h el i t e r a ll e v e lw e h a v e

e q u a la n dn o te q u a l :

A $ = B $

C $ < > D $

T h en e x tl e v e lu p ,w e h a v et h et r u t ho r f a l s i t yo f t h ea s s e r t i o n .

S o m ec a r ew i l lb e n e e d e dt o s e p a r a t ea n dc l a r i f yt h e s en o t i o n s .

W h e ny o us e eA = B i t m a yn o tr e a l l yb e t r u e t h a tA i s e q u a lt o B ,b e c a u s et h e

a s s e r t i o nm a yi n f a c tb e f a l s e .

5 9

Page 74: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 74/306

T h el a r g e rs e to f r e l a t i o n s :

w i l lb e t r e a t e di n l a t e rl e s s o n s .

Q u e s t i o n s :

1 . H o wd o y o um a k et h i sp r o g r a mp r i n tT H A T ' SF I N E ?

1 5 P R I N T" D O E SY O U RT O E H U R T ? "1 7 I N P U TT $2 0 I FT $ = " N A H "T H E N G O T O9 04 0 I F T $ = " S O M E " T H E N G O T O1 5

9 0 P R I N T " T H A T ' SF I N E "

2 . W r i t ea s h o r tp r o g r a m w h i c ha s k si f y o ul i k ec h o c o l a t eo r v a n i l l ai c ec r e a m .

A n s w e r st o b e C o r V . F o rt h eC a n s w e r ,p r i n tY u m m y !F o rt h eV , p r i n t

M m m m m m !

3 . W h a td o w e m e a nb y p h r a s eA ?

4 . W h a td o w e m e a nb y s t a t e m e n tC ?

5 . W h e r ei s t h e" f o r ki n t h er o a d "i n a n I F s t a t e m e n t ?

6 0

Page 75: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 75/306

L e s s o n9 . T h eI F S t a t e m e n t

1 C l e a rt h em e m o r ya n de n t e r :

1 0 P R I N T" { C L R } "| 2 0 P R I N T" A R EY O UH A P P Y ? ( Y E SO R N O ) 1 1

3 0 I N P U TA $4 0 I F A $ = " Y E S "T H E N P R I N T" I ' MG L A D "5 0 I F A $ = " N O " T H E N P R I N T" T O OB A D "

R u nt h ep r o g r a ms e v e r a lt i m e s .T r ya n s w e r i n gY E S ,N O ,o r M A Y B E .W h a t

h a p p e n s ?

Y E S

N O

M A Y B E

T h eI F S t a t e m e n t

T h eI F s t a t e m e n t h a st w op a r t s :

1 0 I Pp h r a s eA T H E N "s t a t e m e n tC

F i r s t ,t h ec o m p u t e rl o o k sa t p h r a s e A .

I f i t i s t r u e ,t h ec o m p u t e rd o e ss t a t e m e n tC .

I f p h r a s eA i s n o tt r u e ,t h e nt h ec o m p u t e rg o e so n t o t h en e x tl i n ew i t h o u td o i n g

s t a t e m e n tC .

I t l o o k sl i k et h i s :

1 0 I Pp h r a s eA i s t r u eT H E Nd o s t a t e m e n tC

a n dt h e ng o o n t o t h e n e x tl i n e

o r

1 0 I Pp h r a s eA i s f a l s eT H E Ng o o n t o t h en e x tl i n e

6 1

Page 76: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 76/306

A s s i g n m e n t9 A :

1 . C l e a rm e m o r ya n dw r i t e ap r o g r a mt h a ta s k sw h i c h y o ul i k eb e t t e r ,f o o t b a l lo r

b a s e b a l l .I f t h ea n s w e ri s b a s e b a l l ,t h ep r o g r a ms h o u l d r e s p o n d w i t hP L A Y

B A L L .I f t h ea n s w e ri s f o o t b a l l ,P R I N Ts o m eo t h e rr e m a r ko n t h es c r e e n .

T h eI F i nE n g l i s ha n di n B A S I C

I n E n g l i s h :

I F y o u rh o m e w o r ki s d o n e ,T H E Ny o um a yh a v es o m ec a k e .

I n B A S I C :

4 0 I F A $ = " D O N E I T H E N P R I N T" E A TS O M EC A K E 1 1

A F o r ki n t h eR o a d

W h e nt h ec o m p u t e rs e e sI F , i t m u s tc h o o s ew h i c hr o a dt o t a k e .

I F p h r a s eA i s t r u e ,i t m u s tg o p a s t t h eT H E Na n do b e yt h es t a t e m e n ti t f i n d s

t h e r e .

6 2

Page 77: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 77/306

I F p h r a s eA i s f a l s e ,i t g o e sd o w nt o t h en e x tl i n er i g h ta w a y .

H e r ei s t h er o a dm a pw i t ht h ef o r ki n t h er o a dm a r k e d :

" I ? A r p H ,

T h eN o t E q u a l S i g n

= m e a n se q u a l

< > m e a n sn o te q u a l

T o m a k et h e< > s i g n :

H o l dd o w nt h eS H I F Tk e ya n dp r e s st h e< k e y ,t h e nt h e> k e y .

6 3

Page 78: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 78/306

U s i n gt h e < > S i g n

4 0 I P p h r a s eA T H E N "s t a t e m e n tC

P h r a s eA i s a p h r a s et h a ti s t r u eo r f a l s e .

P i c k :B $ o " F I R E "f o rp h r a s eA

P u ti t i n a n I F s t a t e m e n t :

4 0 I F B $ o " F I R E "T H E NP R I N T" F E E DH I MS O M E H O TC H IL I "

I F t h eB $ b o xc o n t a i n s" C O L D "

T H E NB $ i s n o te q u a lt o " F I R E "

a n dt h e e x p r e s s i o nB $ o " F I R E "i s T R U E .

T h ec o m p u t e rw i l l p r i n tF E E DH I MS O M E H O TC H I L I .

O r

I F t h eB $ b o xc o n t a i n s" F I R E "

T H E Nt h ep h r a s eB $ o " F I R E "i s F A L S E

a n dt h ec o m p u t e rw i l ln o tp r i n ta n y t h i n g .

H e r ei s h o wi t l o o k si n a p r o g r a m :

1 0 P R I N T" W I T HD O G S I T ' SA C O L D N O S E "1 1 P R I N T

2 0 P R I N T" W I T H D R A G O N S ,I T ' S . . . "2 1 P R I N T

2 5 P R I N T" H O WI S Y O U R D R A G O N ' SB R E A T H ? "2 6 P R I N T2 8 P R I N T " ( E N T E R" F I R E "O R " C O L D " ) "2 9 P R I N T3 0 I N P U TB $

4 0 I F B $ o " F I R E "T H E N P R I N T" F E E DH I MS O M EH O TC H IL I "

5 0 B $ = " F I R E "T H E NP R I N T " W A T C H O U T ! "6 0 P R I N T" N I C ED R A G O N I "

6 4

Page 79: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 79/306

A s s i g n m e n t9 B :

1 . W r i t ea p i z z ap r o g r a m .A s kw h a tt o p p i n gi s w a n t e d .M a k et h ec o m p u t e r a n

s w e r s o m e t h i n gs i l l yf o re a c hd i f f e r e n tc h o i c e .Y o uc a n c h o o s em u s h r o o m s ,

p e p p e r o n i ,a n c h o v i e s ,g r e e np e p p e r s ,o r a n y t h i n gy o uw a n t .Y o uc a na l s oa s k

w h a ts i z e .

2 . W r i t ea c o l o rg u e s s i n gg a m e .O n ep l a y e rI N P U T sa c o l o ri n s t r i n gC $ a n dt h e

o t h e rk e e p sI N P U T i n gg u e s s e si n s t r i n gG $ .U s et w oI F l i n e s ,o n ew i t ha

p h r a s eA

G $ o C $f o rw h e nt h eg u e s si s w r o n g ,a n dt h e o t h e rw i t ha n e q u a ls i g nf o rw h e nt h e

g u e s si s r i g h t .T h es t a t e m e n tC p r i n t sw r o n go r r i g h t .

6 5

Page 80: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 80/306

I n s t r u c t o rN o t e s1 0 . I n t r o d u c i n gN u m b e r s

N u m e r i c a lv a r i a b l e sa n do p e r a t i o n sa r ei n t r o d u c e da n dt h eL E T ,I N P U T ,a n dP R I N Ts t a t e m e n t sa r er e v i s i t e d .T h ei d e ao f m e m o r ya s a s h e l f o fb o x e si s e x

t e n d e dt o n u m b e r s .A g a i n ,f o rt h et i m eb e i n g ,v a r i a b l en a m e sa r e l i m i t e dt o o n e

l e t t e r .

T h ea r i t h m e t i co p e r a t i o n sa r ei l l u s t r a t e d .T h e* s y m b o lf o rm u l t i p l i c a t i o nw i l l

p r o b a b l yb e u n f a m i l i a rt o t h es t u d e n t .D i v i s i o nw i l lp r o d u c ed e c i m a ln u m b e r s ,

b u ts i n c em o s ta r i t h m e t i cw i l lb e a d d i t i o na n ds u b t r a c t i o n ,w i t ha l i t t l em u l t i p l i c

t i o n ,f a m i l i a r i t yw i t hd e c i m a ln u m b e r sw i l lb e h e l p f u lb u t n o te s s e n t i a l .

I t m a ys e e ms t r a n g et o t h es t u d e n tt h a tt h en u m b e r si n s t r i n gc o n s t a n t sc a n n o tb eu s e dd i r e c t l y i na r i t h m e t i c .T h eV A La n dS T R $f u n c t i o n s ,w h i c hw i l lb e i n

t r o d u c e dl a t e ri n t h eb o o k ,a l l o wi n t e r c o n v e r s i o no f n u m b e r sa n ds t r i n g s .

A m i x t u r eo f s t r i n ga n dn u m e r i c a lv a l u e sc a nb e p r i n t e db y P R I N T .

T h en o n s t a n d a r du s eo f = i n B A S I C ,t h a ti t m e a n sr e p l a c e ,n o te q u a l ,s h o w su p i n

s t a t e m e n t ss u c ha s :

L E T K T = N + 1

A c a r t o o nu s e st h eb o xi d e at o i l l u s t r a t et h i sm e a n i n go f = .

A n o t h e ri d e af r o ma r i t h m e t i ct h a td o e s n ' tw o r ki n a L E Ti s s h o w nb e l o w .

A r i t h m e t i c :N = 3 m e a n st h es a m ea s 3 = N .

B A S I C : L E TN = 3 i s o k a y .L E T3 = N i s n o t .

6 6

Page 81: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 81/306

Q u e s t i o n s :

1 . N a m et h e t h r e ek i n d so f b o x e si n m e m o r y .( T h a ti s , n a m e db y t h ek i n d so f

t h i n g s s t o r e di n t h e b o x e s . )

2 . E x p l a i nw h yN = N + 1 f o ra c o m p u t e ri s n o tl i k e5 = 5 + 1 i n a r i t h m e t i c .

3 . G i v ea n o t h e re x a m p l eo f b a da r i t h m e t i ci n a L E Ts t a t e m e n t .U s et h e* o r /

s y m b o l s .

4 . W h a td o e st h ec o m p u t e rm e a nb y T Y P EM I S M A T C HE R R O R ?

5 . G i v e a n e x a m p l eo f ap r o g r a ml i n et h a tw o u l dh a v ea T Y P EM I S M A T C H

E R R O R .

6 . E x p l a i nw h a ti s m e a n t b yt h en a m eo f a v a r i a b l ea n dt h ev a l u eo f a v a r i a b l ef o r

n u m e r i c a lv a r i a b l e s .F o rs t r i n g v a r i a b l e s .

6 7

Page 82: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 82/306

L e s s o n1 0 . I n t r o d u c i n gN u m b e r s

I N P U T ,L E T ,a n dP R I N TS o f a rw e h a v eo n l yu s e ds t r i n g s .N u m b e r sc a n b eu s e d ,t o o .E n t e ra n dr u nt h i s

p r o g r a m :

1 0 p r i n t" { c l r } "2 0 P R I N T" G I V E M EA N U M B E R "

3 0 I N P U TN4 0 L E T A = N + 14 5 P R I N T

5 0 P R I N T" H E R EI S A B I G G E RO N E "6 0 P R I N TA

A r i t h m e t i c

T h ep l u sa n dm i n u ss i g n s a r es i d eb y s i d ei n t h et o pr o wo f t h ek e y b o a r d .

C o m p u t e r su s e* i n s t e a do f X f o ra m u l t i p l i c a t i o ns i g n .

T r yt h i s .C h a n g el i n e4 0 s o t h a tN i s m u l t i p l i e db y 5 .

C o m p u t e r su s e/ f o ra d i v i s i o ns i g n .I t i s o n t h es a m ek e yw i t ht h e? . A n s w e r s

w i l lb e g i v e na s d e c i m a l s .

6 8

Page 83: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 83/306

V a r i a b l e s

T h en a m eo f ab o xt h a tc o n t a i n sa s t r i n gm u s t e n dw i t ha d o l l a rs i g n .E x a m p l e s

N $ ,A $ ,Z $ .

T h en a m eo f a b o xt h a tc o n t a i n s an u m b e rd o e s n ' th a v ea d o l l a rs i g n .E x a m p l e s

N , A , Z .

T h et h i n gt h a ti s p u ti n t h eb o xi s c a l l e dt h ev a l u eo f t h ev a r i a b l e .

A r i t h m e t i ci n t h eL E TS t a t e m e n t

1 0 L E T A = 2 0 0 12 0 L E T B = 1 9 8 3

3 0 L E TC = A - B

4 0 P R I N T" H O W M U C HL O N G E R ,H A L ? 15 0 P R I N TC ; " Y E A R S 1 1

C a r e f u l !

N u m b e r sa n ds t r i n g sa r ed i f f e r e n t .E x a m p l e :" 1 9 8 5 "i s n o ta n u m b e r .I t i sa s t r i n g

c o n s t a n tb e c a u s ei t i s i n q u o t e s .

6 9

Page 84: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 84/306

R u l e :E v e ni f a s t r i n gi s m a d eu p o f n u m b e rc h a r a c t e r s ,i t i s s t i l ln o ta n u m b e r .

S o m en u m e r i c a lc o n s t a n t sa r e5 , 2 2 , 3 . 1 4 ,— 5 0 .

S o m es t r i n gc o n s t a n t sa r e" H I " ," 7 " ," T W O " ," 3 . 1 4 " .

R u l e :Y o uc a n n o td o a r i t h m e t i cw i t ht h en u m b e r si n s t r i n g s .

C o r r e c t :

W r o n g :

W r o n g :

1 0 L E TA = 3 + 7

1 0 L E TA $ = 3 + 7

1 0 L E TA = " 3 " + " 7 "

I f y o ur u ne i t h e ro f t h e s ew r o n gl i n e s ,t h ec o m p u t e rw i l lp r i n t :

T Y P EM I S M A T C H E R R O RI N 1 0

7 0

Page 85: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 85/306

T h e r ea r et w ot y p e so f v a r i a b l e s :n u m b e ra n ds t r i n g .

Y o uc a n n o tp u ta n u m b e ri n a s t r i n gb o xo r as t r i n gi n a n u m b e rb o x .

E n t e r :

1 0 L E TA = 5

2 0 L E TB $ = " 1 0 "3 0 L E T C = A + B $

L i n e s 1 0a n d2 0 a r eo k a y ,l i n e3 0 i s w r o n g .W h a tw i l lt h ec o m p u t e rd o w h e ny o u

r u nt h i sl i t t l ep r o g r a m ?

T r yt o g u e s sw h a te a c ho f t h e s es t a t e m e n t sw i l lp r i n t ,t h e ne n t e rt h el i n e t os e e

w h a th a p p e n s :

P R I N T5

P R I N T" 5 '

P R I N T" 5 + 3 " .

P R I N T" 5 " +" 3 "

P R I N T5 + 3

M i x t u r e si n P R I N T

Y o uc a np r i n tn u m b e r s a n ds t r i n g s i nt h es a m eP R I N Ts t a t e m e n t .( J u s tr e m e m b e

t h a ty o uc a n n o td o a r i t h m e t i cw i t ht h em i x t u r e . )

C o r r e c t : P R I N T A ; " S E V E N" ; " 7 "

P R I N TA ; B $

I R u nt h i sl i n e : 1 0P R I N TB / S ; " I SE Q U A LT O5 / 2 "

A F u n n yT h i n gA b o u tt h eE q u a lS i g n

T h e= s i g ni n c o m p u t i n gd o e sn o tm e a ne q u a l se x a c t l y .L o o ka t t h i sp r o g r a m :

1 1 0 L E T N = N + 1

7 1

Page 86: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 86/306

T h i sd o e sn o tm a k es e n s ei n a r i t h m e t i c .S u p p o s eN i s 7 . T h i sw o u l ds a yt h a t :

7 = 7 + 1

w h i c hi s n o tc o r r e c t .

B u ti t i s o k a yi n c o m p u t i n gt o s a yN = N + 1 b e c a u s et h e

r e p l a c e .H e r ei s w h a th a p p e n s :

L o o ka t t h i s :1 0 l e t n = n + i

T h ec o m p u t e rg o e st o t h eb o xw i t hN w r i t t e no n t h ef r o n t .

I t t a k e st h en u m b e r7 f r o mt h eb o x .

I t a d d s1 t o t h e 7t o g e t8 .

T h e ni t p u t st h e8 i n t h eb o x .

A n o t h e rw a yt o s a yt h es a m et h i n gi s :

1 0 L E TN = W + 1

m e a n s L E T( n e wN ) e q u a l( o l dN ) p l u so n e

s i g nr e a l l ym e a n s

7 2

Page 87: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 87/306

D o n ' tB e B a c k w a r d !

I n a r i t h m e t i c ,y o uc a np u tt h et w on u m b e r s o nw h i c h e v e rs i d eo f t h e e q u a ls i g n

y o uw a n t .B u ti n a L E Ts t a t e m e n ty o uc a n n o t .

A r i t h m e t i c :

B A S I C :

B A S I C :

L E TN = B

L E TB = N

H = 3 i s t h es a m ea s 3 = N

L E TK " = 3 C o r r e c t

L E T3 = N W r o n g

L E TW = B i s n o tt h es a m ea s

L E TB = K T W h yn o t ?( W h a ti s i n e a c hb o x

a f t e rt h el i n er u n s ? )

m e a n s

m e a n s

A s s i g n m e n t1 0 :

1 . W r i t ea p r o g r a mt h a ta s k sf o ry o u ra g ea n dt h ec u r r e n ty e a r .T h e ns u b t r a c ta n d

p r i n to u tt h ey e a ro f y o u rb i r t h .B e s u r et o u s eP R I N Ts t a t e m e n t st o t e l lw h a ti s

w a n t e d a n dw h a tt h ef i n a ln u m b e rm e a n s .

2 . W r i t ea p r o g r a mt h a ta s k sf o rt w on u m b e r sa n dt h e np r i n t so u tt h e i rp r o d u c t

( m u l t i p l i e st h e m ) .B e s u r et o u s ep l e n t yo f P R I N T st o t e l lt h eu s e rw h a ti s

h a p p e n i n g .

it i l '

7 3

Page 88: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 88/306

=

I n s t r u c t o rN o t e s1 1 . T A Ba n dD e l a yL o o p s

T A Bf o l l o w s t h ef a m i l i a rt a bf u n c t i o no f at y p e w r i t e r .D e l a yl o o p ss l o wt h e p r o -

g r a md o w ns o t h a ti t s o p e r a t i o nc a nb e m o r ee a s i l yo b s e r v e d .T h e ya l s o a r eu s e d

f o rp o r t i o n so f t h ep r o g r a mt h a tm u s tr u na t c e r t a i ns p e e d sa n ds h o u l dt h e nb e

c a l l e dt i m i n gl o o p s .

T A Bi s u s e di n a P R I N Ts t a t e m e n ta n di s d e s i g n e dt o a c te x a c t l yl i k et h eT A Bo f a

t y p e w r i t e r ,i n c l u d i n gi t s f a u l t s .S e v e r a lT A B sc a n b e u s e di n o n eP R I N Ts t a t e m e n

b u tt h ea r g u m e n t si n t h e( ) m u s ti n c r e a s ee a c ht i m e .T h a ti s , T A Bc a n n o tb e u s e d

t o m o v et h e c u r s o rb a c kt o t h el e f t .

U s eo f as e m i c o l o nb e t w e e nT A Ba n dt h et h i n gt o b e p r i n t e di s n o t a l w a y s n e

e s s a r y ,b u ti s r e c o m m e n d e d .

T h eC o m m o d o r e6 4 h a sa m o r eg e n e r a la n dp o w e r f u lw a yo f m o v i n gt h e c u r s o r

a r o u n d .Y o us i m p l yp u tC R S Ra r r o w si n q u o t e si n a P R I N Ts t a t e m e n t .T h i sw i l l

b e i l l u s t r a t e di n l a t e rl e s s o n s .

T h i sl e s s o n i n t r o d u c e sl o o p si n a p a i n l e s sw a y .

T h ed e l a yl o o pi s a l l o n o n el i n e ,w i t ha c o l o nt o s e p a r a t e t h eN E X Ts t a t e m e n t .

T h ea m o u n to f d e l a yi s d e t e r m i n e db y t h es i z eo f t h el o o pv a r i a b l e .A v a l u eo f

1 0 0 0g i v e sa b o u ta o n e - s e c o n dd e l a y .

A f t e rs e e i n gt h a tt h ep r i m a r yw o r ko f t h el o o pi s s i m p l yt o c o u n tu n t i la p a r t i c u l a

v a l u ei s r e a c h e db e f o r eg o i n go n t o t h en e x ti n s t r u c t i o n ,i t w i l lb e e a s i e rf o rt h e

s t u d e n tt o h a n d l el o o p si n w h i c ht h i n g sa r eg o i n go n i n s i d e .

7 4

Page 89: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 89/306

Q u e s t i o n s :

1 . S h o wh o wt o w r i t e ad e l a yl o o pt h a tl a s t sf o ra b o u tt w os e c o n d s .

2 . W i l lt h i sw o r kf o ra d e l a y l o o p ?

1 2 0 F O RQ = 1 0 0 0T O 5 0 0 0

] 1 2 2 N E X TQ

3 . T e l lw h a tt h ec o m p u t e rw i l ld o i n e a c hc a s e :

1 0 P R I N T" H I " ; T A B ( 8 ) ; " G O O DL O O K I N G ! "

1 0 T A B ( 5 ) ; P R I N T " O H - O H 1 "

1 0 P R I N TT A B ( 1 0 ) ; " N O P E " ; T A B ( 1 ) ; " N O TH E R E "

4 . W h a ti s t h ea r g u m e n ti n t h i ss t a t e m e n t ?

2 0 P R I N TT A B ( 5 ) ; " E . T . C A L LH O M E "

7 5

Page 90: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 90/306

L e s s o n1 1 . T A Ba n dD e l a yL o o p s

( T h eP R I N Tc u r s o ri s i n v i s i b l e . )

T h en e x t t h i n gt o b e p r i n t e dg o e sw h e r et h e c u r s o ri s .

T r yt h i s :

1 0 P R I N TM 1 2 3 4 5 6 7 8 9 A B C D E F "

3 0 P R I N TT A B ( 3 ) ; " Y " 7 T A B ( 8 ) ; M Z "

R u l e :A f t e rT A B ( N ) ,t h e n e x tc h a r a c t e rw i l lb e p r i n t e di n c o l u m nN + 1 .

C a r e f u l !

R u nt h i s :

1 0 T A B ( 5 )

Y o us e eS Y N T A XE R R O RI N 1 0 .T A B ( )h a st o b e i n a P R I N Ts t a t e m e n t .Y o uc a n

n o t u s eT A B ( ) ,o r a n yf u n c t i o n ,b y i t s e l f .

Y o uC a n n o tT A BB a c k w a r d

T r yt h i s :

1 0 P R I N T" 1 2 3 4 5 6 7 8 9 A B C D E F "2 0 P R I N TI I A M 7 T A B ( 9 ) ; I I B " ; T A B ( 3 ) ; " C "

T A B ( )c a n o n l ym o v et h ep r i n t i n gt o t h er i g h t .Y o uc a n n o tm o v eb a c kt o t h el e f t .

U s i n gT A Bi n P R I N TS t a t e m e n t s

T A Bi n a P R I N Ts t a t e m e n ti s l i k et h eT A Bo n a t y p e w r i t e r .I t m o v e st h eP R I N T

c u r s o ra n u m b e ro f s p a c e st o t h er i g h t .

7 6

Page 91: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 91/306

Y o u rN a m eI s F a l l i n g !

1 0 P R I N T" { C L R } 1 1• 1 5 L E TN = l

2 0 P R I N T " Y O U RF I R S TN A M E "3 0 I N P U TW $4 0 P R I N TT A B ( N ) ; W $

| 5 0 L E T N = N + 1

6 0 G O T O 4 0

P r e s sR U N / S T O Pt o s t o p t h eR U N .

T h i sp r o g r a mp r i n t sy o u rn a m ei n a d i a g o n a ld o w nt h es c r e e n ,t o pl e f tt o b o t t o m

r i g h t .T r yo t h e rv a l u e so f N . T r yc h a n g i n gl i n e s :

1 5 L E T N = 1 5

5 0 L E TN = N - 1

H o wB i ga S p a c eC a nT A B () M a k e ?

T h e r ea r e4 0 s p a c e sa c r o s st h es c r e e n .Y o uc a nu s ea n yn u m b e r0 t h r o u g h 3 9i n

s i d et h eT A B ( )p a r e n t h e s e s .L a r g e rn u m b e r sm a k et h ec o m p u t e rs k i pl i n e s .N u mb e r sl a r g e rt h a n 2 5 5w i l lg i v ea n e r r o rm e s s a g ew h e nt h ep r o g r a mr u n s :

I L L E G A LQ U A N T I T YE R R O RI N X X .

w h e r eX Xi s t h el i n en u m b e r .

Y o uc a nu s eT A Bw i t hs t r i n g s ,t o o .

E x a m p l e :

1 0 P R I N TF $ 7 T A B ( 1 0 ) ; M $ ; T A B ( 1 5 ) ; L $

H e r eF $ ,M $ ,a n dL $ a r et h es t r i n g s f o rt h ef i r s t ,m i d d l e ,a n dl a s tn a m e s .

7 7

Page 92: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 92/306

F u n c t i o n sD o n ' tF i g h tB u tT h e yH a v eA r g u m e n t s

T A B () i s l i k ea f u n c t i o n .W ew i l ls t u d yf u n c t i o n sl i k eR N D ( ) ,I N T ( ) ,L E F T $ () ,

e t c .T h en u m b e ri n s i d et h e ( )i s c a l l e dt h ea r g u m e n to f t h e f u n c t i o n .T A B ( )s a y s

" m o v et h e c u r s o ro v e r "a n dt h ea r g u m e n tt e l l sw h e r et o m o v ei t t o .

A s s i g n m e n t1 1A :

1 . W r i t ea p r o g r a mt h a ta s k sf o rl a s tn a m e sa n dn i c k n a m e s .T h e np r i n tt h el a s t

n a m es t a r t i n ga t c o l u m n1 a n dt h en i c k n a m ea t c o l u m n1 0 .U s ea G O T Os o t h e

p r o g r a mi s r e a d yf o ra n o t h e rn a m e / n i c k n a m ep a i r .

2 . W r i t ea n " i n s u l t "p r o g r a m .I t a s k sy o u rn a m e .T h e ni t w r i t e sy o u rn a m ea n d

T A B so v e ri n t h el i n ea n dp r i n t sa n i n s u l t .

D e l o yL o o p s

H e r ei s a w a yt o s l o wd o w np a r t so f t h ep r o g r a m .I t i s c a l l e da d e l a yl o o p .

R u nt h i sp r o g r a m :

1 0 R E M H I D E A N D S E E K2 0 P R I N T" { C L R } "3 0 P R I N T" H I D E ! "

4 0 F O R1 = 1 T O 2 0 0 0 : N E X TI

5 0 P R I N T " C O M I N G R E A D Y O RN O T ! "

7 8

Page 93: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 93/306

L i n e4 0 i s t h ed e l a yl o o p .T h ec o m p u t e rc o u n t sf r o m1 t o 2 0 0 0b e f o r eg o i n go n t o

t h e n e x tl i n e .I t i s l i k ec o u n t i n gw h e ny o ua r e" i t "i n a g a m eo f h i d ea n ds e e k .

T r yc h a n g i n gt h en u m b e r2 0 0 0i n l i n e4 0 t o s o m eo t h e rn u m b e r .

E a c h1 0 0 0i n t h e d e l a yl o o pi s w o r t ha b o u to n es e c o n do f t i m e .T r yt h i s :

1 0 R E M— T I C KT O C K—2 0 P R I N T" { C L R } "3 0 I N P U T " W A I TH O W L O N G " ; S3 6 T = S * 1 0 0 04 0 F O R Q = l T OT : N E X TQ

4 5 P R I N T5 0 P R I N TS ; " S E C O N D S A R EU P "

A s s i g n m e n t1 1 B :

1 . W r i t ea s l o w p o k ep r o g r a mt h a tp r i n t so u ta t h r e e - w o r dm e s s a g ew i t hs e v e r a l

s e c o n d sb e t w e e ne a c h w o r d .

2 . W r i t ea d i g i t a lc l o c kp r o g r a m .I t u s e sa t i m i n g l o o pt o c o u n ts e c o n d s .I N P U T

t h e p r e s e n tt i m ei n h o u r s , m i n u t e s ,a n ds e c o n d s .T h ec l o c kt h e nc o u n t ss e c o n d

a n dp r i n t st h e mo u t .W h e n6 0 s e c o n d sh a v e g o n eb y ,a d do n et o t h em i n u t e s

a n dp u t s e c o n d sb a c kt o z e r o .S a m ew i t hh o u r s .R u nt h e c l o c k al o n gt i m ea n d

a d j u s tt h et i m i n gl o o ps o t h a tt h ec l o c kk e e p sg o o dt i m e .

7 9

Page 94: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 94/306

I n s t r u c t o rN o t e s1 2 . T h eI F S t a t e m e n tw i t hN u m b e r s

T h eI F s t a t e m e n ti s e x t e n d e dt o n u m e r i c a le x p r e s s i o n s .T h el o g i c a l r e l a t i o n su s e d

i n t h i sl e s s o na r e :

= > < < >

I t i s a g o o di d e at o g e tt h es t u d e n tt o p r o n o u n c et h e s ee x p r e s s i o n so u tl o u d .A <

B m a k e sa l o tm o r es e n s ew h e np r o n o u n c e d" A i s l e s st h a nB " t h a nw h e ni t ' sj u s t

a l l o w e dt o f l o w o v e rt h ee y e b a l l s .T h ep o i n t( t h el i t t l ee n d )o f t h e< a n dt h e>

s y m b o l sp o i n t st o t h e s m a l l e s to f t h et w on u m b e r s .

T h eu s eo f n e s t e dI F si s d e m o n s t r a t e d .T h i si s a v e r yp o w e r f u lc o n s t r u c t i o n ,b u t

m a yb e c o n f u s i n g .G o t h r o u g ht h ee x a m p l ew i t h y o u rs t u d e n tt o m a k es u r et h a t

t h ec o n s t r u c t i o ni s u n d e r s t o o d .

A h o m e m a d el o o pi s d e m o n s t r a t e di n t h e" G u e s s i n gG a m e / 'b u t n o td i s c u s s e d .

T h el o o ps t a r t si n l i n e5 0 a n dg o e st o 8 0 .T h ee x i t t e s ti s m a d ei n l i n e5 7 .T h e

l o g i co f t h i sl o o pi s t h a t o f aD OW H I L E .

Q u e s t i o n s :

1 . W h a tp a r to f t h eI F s t a t e m e n tc a nb e t r u eo r f a l s e ?

8 0

Page 95: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 95/306

2 . W h a tf o l l o w s t h eT H E Ni n a n I F s t a t e m e n t ?

, 3 . A f t e rt h i sl i t t l ep r o g r a mr u n s ,w h a tw i l lb e i n b o xD ?

1 0 L E T D = 4

l 1 5 I F 3 < 7T H E NL E TD = 9

4 . S a m eq u e s t i o n ,b u tf o r3 > 7 .

8 1

Page 96: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 96/306

L e s s o n1 2 . T h eI F S t a t e m e n tw i t hN u m b e r s

T r yt h i s :

1 0 R E M* * * T E E N A G E R* * *1 5 P R I N T" { C L R } "2 0 P R I N T " Y O U R A G E ? "

3 0 I N P U TA4 0 I F A < 1 3T H E N P R I N T" N O TY E T A T E E N A G E R I "5 0 I F A > 1 9T H E NP R I N T " G R O W NU P A L R E A D Y ! "

T h i sI F s t a t e m e n ti s l i k et h eo n et h a ty o uu s e db e f o r ew i t hs t r i n g s .A g a i nw e

h a v e :

1 0 I P p h r a s eA i s t r u eT H E Nd o s t a t e m e n tC

P h r a s eA c a nh a v et h e s ea r i t h m e t i cs y m b o l s :

= e q u a lt o

> g r e a t e rt h a n

< l e s st h a n

< > n o te q u a lt o

E a c hp h r a s eA i s w r i t t e nw i t hm a t hs y m b o l s , b u ty o us h o u l ds a yi t o u t l o u di n

E n g l i s h .F o re x a m p l e :

A < > B i s p r o n o u n c e dA i s n o t e q u a lt o B .

5 < 7 i s p r o n o u n c e df i v ei s l e s st h a ns e v e n .

P r a c t i c e

F o rt h e s ee x a m p l e s ,L E TA = 7a n dL E TB = 5a n dL E TC = 5 :

8 2

Page 97: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 97/306

S a ye a c hp h r a s eA o u tl o u da n dt e l li f i t i s t r u eo r f a l s e :

A = B T F

A > C T F

A > B T F

B = C T F

A < B T F

B < C T F

A = C T F

B o C T F

A n I F I n s i d ea n I FT h e" T e e n a g e r "p r o g r a ma b o v ei s m i s s i n gs o m e t h i n g .A d d :

6 0 I F A > 1 2T H E NI F A < 2 0 T H E N P R I N T " T E E N A G E R l "

T o u n d e r s t a n dt h i s ,b r e a ki t i n t ot w op a r t s :

6 0 I P A > 1 2T H E N( s t a t e m e n tC ) w h e r e

( s t a t e m e n tC ) i s ( I FA < 2 0T H E NP R I N T" T E E N A G E R ! " )

T h i sl i n ef i r s ta s k s ," I s t h ea g eg r e a t e rt h a n1 2 ? "

I f t h ea n s w e ri s y e s ,t h el i n eg e t st o a s kt h es e c o n dq u e s t i o n ," I s t h ea g el e s s

t h a n2 0 ? "

I f t h ea n s w e ri s a g a i ny e s ,t h el i n ep r i n t sT E E N A G E R !

I f t h ea n s w e rt o e i t h e rq u e s t i o ni s n o , t h eP R I N Ts t a t e m e n ti s n o tr e a c h e d , s o

n o t h i n gi s p r i n t e d .

A s s i g n m e n t1 2A :

1 . D r a wt h e " f o r ki n t h er o a d "d i a g r a mf o rl i n e6 0 a b o v e .T h e r ew i l lb e t w of o r k s

o n t h ed i a g r a m .

8 3

Page 98: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 98/306

G u e s s i n gG a m e

1 0 R E MG U E S S I N GG A M E

1 5 P O K E 5 3 2 8 1 , 02 0 P R I N T " { C L R } T W O - P L A Y E RG A M E "3 0 P R I N T" { D O W N H C Y N }F I R S TP L A Y E RH I D EY O U RE Y E S 1

• I

3 2 P R I N T" { D O W N M G R N }S E C O N D P L A Y E R : "3 4 P R I N T" E N T E R AN U M B E RF R O M1 T O 1 0 0 { D O W N } "4 0 I N P U T N4 5 P R I N T" { C L R } "5 0 P R I N T" { D O W N } { Y E L } M A K EA G U E S S"

5 5 I N P U TG

5 7 I F G = NT H E N G O T O9 0

6 0 I F G < NT H E N P R I N T" T O OS M A L L "6 5 I FG > N T H E N P R I N T" T O OB I G "

8 0 G O T O5 09 0 R E M G A M EO V E R9 5 P R I N T" { C L R } { R E D } { 3 D O W N j T H A T ' SI T l f W H T } "

I f y o u w a n tt o s a v et h i sp r o g r a mo n a d i s k ,r e a dl e s s o n1 4 .

U s u a l l y ,l i n e8 0 s e n d sy o ut o l i n e5 0 s o t h a ty o uc a nm a k em o r eg u e s s e s .B u ti f

G = N i n l i n e5 7 ,t h e ny o us k i pt o l i n e9 0 a n dp r i n tT H A T ' SI T !

8 4

Page 99: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 99/306

A s s i g n m e n t1 2 B :

( 1 . W h a th a p p e n si n e a c hl i n ei f G i s 3 1 a n dN i s 8 8 :

J 5 0

5 5

5 7

6 0

6 5

8 0

W h a th a p p e n si f G i s 8 8 a n dN i s 8 8 :

5 0

5 5

5 7

6 0

6 5

8 0

2 . H e r ei s a n o t h e rp r o g r a m .W h a tw i l li t p r i n t ,a n dh o wm a n yt i m e s ?

1 0 L E TN = l1 5 P R I N TN ?

2 0 I P N = 1 3T H E NP R I N T" { C Y N j U N L U C K Y l { W H T } "3 0 L E T N = N + 24 0 I FN > 3 0 T H E NG O T O9 9

5 0 G O T O1 5

9 9 P R I N T" D O N E "

8 5

Page 100: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 100/306

W h a tw i l li t p r i n ti f l i n e1 0 i s c h a n g e dt o :

1 0 L E TN = 2

3 . W r i t ea p r o g r a mt h a ts a y ss o m e t h i n ga b o u t e a c hn u m b e rf r o mo n et o t e n .T h e

p l a y e re n t e r s an u m b e ra n dt h ec o m p u t e rp r i n t ss o m e t h i n ga b o u te a c hn u m b e r

" T h r e es t r i k e s ,y o u ' r eo u t "o r " S e v e ni s l u c k y , "e t c .

4 . W r i t ea g a m ef o rg u e s s i n ga c a r dt h a tp l a y e r1 h a se n t e r e d .T h e np l a y e r 2m u s t

e n t e r t h es u i t ( c l u b ,d i a m o n d ,h e a r t ,o r s p a d e )a n dt h ev a l u e( 1 t h r o u g h1 3 )o f

t h ec a r d .T h ep l a y e rf i r s tg u e s s e st h es u i t ,t h e nt h ep r o g r a mg o e so n t o a s kt h e

v a l u e .K e e ps c o r e .

8 6

Page 101: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 101/306

I n s t r u c t o rN o t e s1 3 . R a n d o mN u m b e r sa n dt h e I N Tx F u n c t i o n

— , T h i sl e s s o n i n t r o d u c e st w of u n c t i o n s :R N Da n dI N T .T h e s ea r ev e r y i m p o r t a ni n

g a m e sa n da r ea l s oh a n d yi n m a k i n gi n t e r e s t i n gd i s p l a y sl i k ek a l e i d o s c o p e s .

T h eR N Df u n c t i o np r o d u c e sp s e u d o r a n d o md e c i m a ln u m b e r sl a r g e rt h a n0 a n d

s m a l l e rt h a n1 . S u c h n u m b e r sa r ed i r e c t l yu s a b l ea s p r o b a b i l i t i e s ,b u ti n t e g e r si n a

s p e c i f i cr a n g e ,s u c ha s 1 t o 6 f o ra d i e ,o r 1 t o 1 3 f o ra s u i to f c a r d s ,a r e o f t e n

m o r ed i r e c t l yu s a b l e .

Y o u rs t u d e n tm a yb e s h a k yi n d e c i m a la r i t h m e t i c ,b u ta l l t h a ti s r e q u i r e dh e r ei s

m u l t i p l i c a t i o no f t h er a n d o m n u m b e rb y a n i n t e g e r ,a n dp e r h a p sa l s oa d d i t i o nt o

a n i n t e g e r .T h ec o m p u t e rd o e st h em u l t i p l i c a t i o n , o f c o u r s e ,s o o n l ya r o u g hi d e a

o f t h e d e s i r e dr e s u l ti s n e c e s s a r y .

A f t e re x t e n d i n gt h er a n d o m n u m b e rt o a r a n g el a r g e rt h a nz e r ot o o n e ,c o n v e r

s i o nt o a n i n t e g e ri s d e s i r e d .T h eI N Tf u n c t i o nd o e st h i sb y s i m p l yt r u n c a t i n g t

n u m b e r ,d e l e t i n gt h ed e c i m a lp a r t .( F o rn e g a t i v en u m b e r st h es i t u a t i o ni s a l i t t l e

m o r ec o m p l i c a t e d ,a n dt h a tr a r ec a s ei s n o tt r e a t e dh e r e . )

T h ec o n c e p to f r o u n d i n go f fm a yb e f a m i l i a rt o y o u rs t u d e n t .I N Tw i l lr o u n do f fa

n u m b e ri f y o uf i r s ta d d0 . 5 t oi t .

T h ec o n c e p to f f u n c t i o n si s a g a i nu s e di n t h i sl e s s o na n di s f u r t h e rc l a r i f i e d .

T h en e s t i n go f o n ef u n c t i o ni n t h ep a r e n t h e s e so f a n o t h e ri s i l l u s t r a t e db y u s i n g

» R N Di n t h ea r g u m e n to f a n I N Tf u n c t i o n .

8 7

Page 102: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 102/306

Q u e s t i o n s :

1 . T e l lw h a tt h ec o m p u t e rw i l lp r i n tf o re a c hc a s e :

1 0 P R I N TI N T ( G )

a n dt h eb o xG c o n t a i n s :2 , 2 . 1 ,2 . 9 5 ,3 . 0 0 1 ,6 7 ,0 , 0 . 2

2 . T e l lh o wt h eI N T ( )f u n c t i o ni s d i f f e r e n tf r o mr o u n d i n go f fn u m b e r s .W h i c hi s e a s i e r f o ry o ut o d o ?

3 . T e l lh o wt o c h a n g ea n u m b e rs o t h a tt h eI N T ( )f u n c t i o nw i l lr o u n di t o f f .

4 . W h a td o e st h eR N D ( 8 )f u n c t i o nd o ?

5 . H o wc a ny o ug e tr a n d o mi n t e g e r sf r o m0 t h r o u g h1 0 ?( H i n t :I N T ( R N D ( 8 ) * i s

n o tq u i t er i g h t . )

6 . H o wc a ny o ug e tr a n d o mi n t e g e r sf r o m5 t h r o u g h8 ?

8 8

Page 103: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 103/306

L e s s o n1 3 . R a n d o mN u m b e r sa n dt h e I N TF u n c t i o n

T h eR N DF u n c t i o n

W h e ny o ut h r o wd i c e ,y o uc a n ' tp r e d i c tw h a t n u m b e r sw i l lc o m eu p .

W h e nd e a l i n gc a r d s ,y o uc a n ' tp r e d i c tw h a tc a r d se a c h p e r s o nw i l lg e t .

Y o un e e ds o m ew a yt o r o l ld i c ea n dd e a l c a r d sa n dd o o t h e r u n p r e d i c t a b l et h i n g s

w i t ht h ec o m p u t e r .

U s et h eR N Df u n c t i o nt o d o t h i s .R N Ds t a n d sf o rr a n d o m .

R u nt h i sp r o g r a m :

1 0 R E M R A N D O M N U M B E R S2 0 P R I N T" { C L R } { 2D O W N } 1 1

2 5 L E T N = R N D ( 8 )3 0 P R I N TN

4 0 I F N < . 9 5T H E N G O T O2 5

Y o us e ea l o to f d e c i m a ln u m b e r s o nt h es c r e e n .T h eR N Df u n c t i o ni n l i n e2 5

m a d et h e m .

I t d o e s n ' tm a t t e rw h a tn u m b e ry o up u ti n t h ep a r e n t h e s e sj u s ts o l o n ga s i t i s

g r e a t e rt h a n0 . 1c h o s e8 b e c a u s ei t i s n e a rt h e ( )s i g n so n t h ek e y b o a r d ,m a k i n gi t

e a s yt o t y p e( 8 ) .

R N Dg i v e sn u m b e r st h a ta r ed e c i m a l sl a r g e rt h a n0 b u ts m a l l e rt h a n1 . T o m a k e

n u m b e r sl a r g e rt h a n1 , y o uj u s tm u l t i p l y .

C h a n g et h ep r o g r a ma b o v et o :

1 0 R E MR A N D O M N U M B E R S

2 0 P R I N T M { C L R } { 2D O W N } 1 12 5 L E TN = R N D ( 8 ) * 5 23 0 P R I N T N4 0 I F N < 4 5T H E N G O T O2 5

a n dr u ni t a g a i n .

8 9

Page 104: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 104/306

N o wt h en u m b e r sa r eb e t w e e n0 a n d5 2

i n s i z e .T h e yc o u l db e u s e df o rc h o o s i n g

t h e5 2 c a r d si n a d e c k .

B u t :

W eu s u a l l yw a n tw h o l en u m b e r sl i k e7 a n d2 3 r a t h e rt h a nd e c i m a ln u m b e r sl i k e

7 . 0 3a n d2 3 . 6 2 .G e tt h e mb y u s i n gt h eI N Tf u n c t i o n .

T h e I N TF u n c t i o n

T h eI N Tf u n c t i o nt a k e st h en u m b e ri n i t s p a r e n t h e s e sa n dt h r o w sa w a yt h ed e c i

m a lp a r t ,l e a v i n ga n i n t e g e r( a w h o l en u m b e r ) .C h a n g et h ep r o g r a ma b o v ea n d

r u na g a i n :

2 9 n = i n t ( n )

9 0

Page 105: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 105/306

Page 106: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 106/306

- . _

R o l l i n gt h e B o n e s

M o s td i c eg a m e su s et w od i c e .O n eo f t h e mi s c a l l e d ad i e .H e r ei s a p r o g r a mt h a t

a c t sl i k er o l l i n ga s i n g l ed i e :

1 0 R E M/ / / O N ED I E / / /2 0 P R I N T " { C L R } { 3 D O W N } "3 0 L E TR = R N D ( 8 )4 0 P R I N T" R A N D O M N U M B E R " ; T A B ( 1 5 ) ; R5 0 L E TS = R * 65 5 P R I N T" { D O W N }T I M E S6 " ; T A B ( 1 5 ) ; S6 0 L E TI = I N T ( S )6 5 P R I N T" { D O W N }I N T E G E RP A R T " ; T A B ( 1 5 ) ; I

7 0 L E TD = I + 1

7 5 P R I N T" { D O W N } D I ES H O W S " ; T A B ( 1 5 ) ; D8 0 F O RT = l T O 2 0 0 0 : N E X TT

8 5 G O T O2 0

W h a tG o e sI n s i d e t h e( ) ?

N u m b e r s : 1 0 l e t x = i n t ( 3 4 . 7 )

V a r i a b l e s : 1 0 l e t x = i n t ( j )

E x p r e s s i o n s :1 0 l e t x = i n t ( 3 * y + 2 )

F u n c t i o n s : 1 0 l e t x = i n t ( r n d ( 8 ))

H e r ei s h o wt o s a v ea l o to f r o o m .

I n s t e a do f :

3 0 L E T R = R N D ( 8 )5 0 L E T S = R * 66 0 L E T I = I N T ( S )

7 0 L E T D = l + I

U s ej u s t :

7 0 L E T D = 1 + I N T ( R N D ( 8 ) * 6 )

9 2

Page 107: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 107/306

R a n d o mN u m b e r si n t h eM i d d l e

S u p p o s ey o u rg a m en e e d sr a n d o mn u m b e r sb e t w e e n6 a n d8 . Y o uh a v ea f u n n y

| d i et h a ts h o w so n l y6 , 7 ,o r 8 w h e ny o ur o l li t .

R u nt h i s :

1 0 L E TD = I N T ( R N D ( 8 ) * 3 ) + 6

E x p r e s s i o n

R N D ( 8 )

R N D ( 8 ) * 3

I N T ( R N D ( 8 ) * 3 )

M a k e s

s m a l l

0 . 0 1

0 . 0 3

0

n u m b e r sf r o m

l a r g e

0 . 9 9

2 . 9 7

2I N T ( R N D ( 8 ) * 3 ) + 66 8

A s s i g n m e n t1 3 :

1 . W r i t ea p r o g r a mt h a t" r o l l s "t w od i c e ,c a l l e dD l a n dD 2 .S h o wt h en u m b e ro n

D l a n d o nD 2 a n dt h es u mo f t h ed i c e .Y o ud o n o tn e e dt h ev a r i a b l e s R ,S , a n d

I i n t h ep r o g r a ma b o v e .T h e yw e r eu s e dt o s h o wh o wt h ef i n a la n s w e rw a s

f o u n d .

2 . W r i t ea p r o g r a mt h a ts h o w st h er o l lo f a s p e c i a ld i e .I t i s a c u b e( s i xs i d e s )a n d

t h es i d e sh a v et h en u m b e r s1 0 ,1 2 , 1 4 ,1 6 ,1 8 ,a n d2 0 o n t h e m .

3 . W r i t ea " p a p e r ,s c i s s o r s ,a n dr o c k "g a m e ,w i t hy o ua g a i n s tt h ec o m p u t e r .

( P a p e rw r a p sr o c k ,r o c k b r e a k ss c i s s o r s ,s c i s s o r sc u tp a p e r . )T h ec o m p u t e r

c h o o s e sa n u m b e r1 , 2 , o r 3u s i n gt h eR N D ( )f u n c t i o n :1 i s p a p e r , 2i s r o c k ,3

i s s c i s s o r s .Y o uI N P U Ty o u rc h o i c ea s P , R , o rS a n dt h ec o m p u t e rf i g u r e so u t

w h ow o na n dk e e p ss c o r e .

9 3

Page 108: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 108/306

I n s t r u c t o rN o t e s1 4 . S a v et o D i s k

T h i sl e s s o na s s u m e st h a tt h es t u d e n th a sa d i s kf o r m a t t e df o ru s ew i t ht h e1 5 4 1

d i s kd r i v e .( S e ep . 2 4 3 ," D i s kU s a g e . " )

T h i sl e s s o ns h o w sh o wt o s a v ep r o g r a m st o t h ed i s ka n dh o wt o l o a dt h e ma g a i n .

T h e s ec o m m a n d sa r ei n t r o d u c e d :

S A V E "f i l e n a m e " , 8 s a v ep r o g r a m

L O A D "f i l e n a m e ", 8 l o a dp r o g r a m

L 0 A D " * " , 8 l o a dd i r e c t o r y

O P E N1 5 , 8 f 1 5 i " S 0 : f i l e n a m e " : C L O S ' E1 5e r a s ep r o g r a mf r o md i s k

O t h e rr e s e r v e dw o r d su s e di n t h i sc h a p t e ra r eN E W ,R E M ,P R I N T , a n dL I S T .

T h i sl e s s o nc a n b e u s e d a n y t i m ea f t e rl e s s o n3 .

W ep u ti t t h i s l a t ei n t h eb o o kb e c a u s em o s tp r o g r a m su p t o t h i sp o i n ta r er e l

a t i v e l ys h o r ta n du n i n t e r e s t i n g ,n o tw o r t hs a v i n g .T h ep r o c e s so f p r o g r a m m i n

w a sb e i n ge m p h a s i z e d ,n o tt h ee n dr e s u l to f u s e f u lp r o g r a m s .

H o w e v e r ,y o u ro w nj u d g m e n ts h o u l dp r e v a i l .Y o uc a ni n s e r tt h i sc h a p t e ra t a n

e a r l i e rp o i n ti n t h ef l o wo f l e s s o n ss o t h a tp r o g r a m s w h i c hy o u rs t u d e n ti s

p a r t i c u l a r l yp r o u do f c a nb e s a v e d .

Q u e s t i o n s :

1 . W h a ti s a f i l e ?

2 . H o wl o n gc a na f i l e n a m eb e ?

3 . C a np u n c t u a t i o nm a r k sb e i n a f i l e n a m e ?C a nt h ef i l e n a m eh a v es p a c e si n i t ?

4 . H o wc a ny o uc h e c kt h a tt h ep r o g r a mg o to n d i s ko k a y ?

9 4

Page 109: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 109/306

5 . W h a th a p p e n st o t h ep r o g r a ma l r e a d yi n m e m o r yi f y o ul o a dt h ed i r e c t o r y ?I f

y o ul o a da n o t h e rp r o g r a m ?

6 . D o e st h ef i l e n a m eh a v et o b e t h es a m ea s t h ep r o g r a mn a m e ?

7 . I fa p r o g r a mi s p u ti n t o af i l e , i si t s t i l li n m e m o r y ?

9 5

Page 110: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 110/306

L e s s o n1 4 . S a v et o D i s k

I f y o uh a v ea 1 5 4 1d i s kd r i v e ,y o uc a ns t o r ep r o g r a m so n a f l o p p yd i s k .

E n t e r i n ga P r o g r a m

I f y o ua l r e a d yh a v ea p r o g r a mi n t h ec o m p u t e r ,

s k i pd o w nt o " S a v i n ga P r o g r a m . "

I f n o t ,e n t e r :

N E W1 0 R E M H O T D O G

2 0 P R I N T" N OM U S T A R D "

S a v i n ga P r o g r a m

D o y o us t i l lh a v ey o u rd i s ki n t h ed r i v e ?

I f n o t ,p u ty o u rd i s ki n n o w . B es u r et o

c l o s et h ed o o r !

E n t e r :

S A V E" H I " # 8

Y o uw i l lh e a ra w h i r r i n ga n ds e et h er e dl i g h to n t h e d i s k d r i v ec o m eo n .W h e n

t h er e dl i g h tg o e so u ta n dt h ew h i r r i n gs t o p s ,y o u rp r o g r a mi s o n t h ed i s k .

B u ti f y o us e et h er e dl i g h tf l a s h i n go n t h e d i s kd r i v e ,i t m e a n sy o u h a v ea d i s k

e r r o r .C h e c kt h ew r i t e - p r o t e c tn o t c ho n t h es i d eo f t h ed i s k .I f t h e r ei s a p a p e rt a b

s t u c ko v e rt h ew r i t e - p r o t e c tn o t c h ,y o uc a n n o ts a v et o t h ed i s ku n l e s sy o ur e m o v

t h ep a p e rt a b .( B es u r et h a ty o ur e a l l yw a n tt o s a v et o t h i sd i s k .A s ky o u r s e l fw h y

t h ep a p e rw a sp u to v e rt h e n o t c h ;m a y b et h i sd i s kh a ss o m ei m p o r t a n tp r o g r a m

o n i t . )O r m a y b ey o ua l r e a d yh a v ea p r o g r a mb y t h es a m en a m eo n t h ed i s k .

T h eF i l e n a m e

T h ef i l e n a m eo f y o u rp r o g r a mi s H I .T h ed i s ki s l i k ea f i l ec a b i n e t .T h e r ei s a f i l e

f o l d e ri n i t w i t ht h en a m eH I w r i t t e no n i t . I n t h ef i l ef o l d e ri s y o u r p r o g r a m .

9 6

Page 111: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 111/306

W eu s e dH I b e c a u s ei t i s e a s i e rt o

r e m e m b e rt h ef i l e n a m ei f i t i s t h e

s a m ea s t h ep r o g r a m n a m e .

I f y o u rp r o g r a mh a sa d i f f e r e n t

n a m e ,s a v ei t a g a i nu n d e rt h e

c o r r e c tn a m e .

T h eD e v i c eN u m b e r

T h en u m b e r8 i n t h eS A V Ec o m m a n di s t h ed e v i c en u m b e r .T h ed i s k d r i v ei s d e

v i c en u m b e r8 .

I f y o uf o r g e tt o t y p et h e, 8 i n t h eS A V Ec o m m a n d ,t h ec o m p u t e rt h i n k sy o u w a n t

t o s a v et o c a s s e t t e t a p e .P r e s s t h eR U N / S T O Pk e yt o g e tb a c kt o n o r m a l .

T h eD i s kD i r e c t o r y

T h ed i s kh a sa f i l ec a l l e dt h ed i r e c t o r yt h a ti s a l i s to f a l l t h ep r o g r a mn a m e so n

t h ed i s k .

L e t ' ss e ei f y o u rp r o g r a mi s r e a l l ys t o r e do n t h ed i s k .

E n t e r :

l o a d " $ H , 8L I S T

9 7

Page 112: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 112/306

T h i sl o a d st h ed i r e c t o r yb u te r a s e sy o u rp r o g r a m !S o d on o te v e r l o a dt h ed i r e c

t o r yi f y o us u s p e c ty o u rp r o g r a md i dn o tg e ts a v e dp r o p e r l y !

A f t e r aw h i r r i n g ,y o uw i l ls e ea l i s to f a l l t h ef i l e so n t h ed i s k .Y o u rf i l ei s p r o ba b l yt h el a s to n ei n t h el i s t .I t w i l ls a y :

1 " H I " P E G

T h eP R Gm e a n st h ef i l ef o l d e rc o n t a i n sa p r o g r a m .

T h e1 m e a n si t i s a s h o r tp r o g r a m , o n l yt a k i n gu p o n eb l o c ko n t h ed i s k .T h i n ko f

e a c hb l o c ka s ap a g ei n t h ef o l d e rH I i n t h ef i l ec a b i n e t .

L o a d i n gt h eP r o g r a m

E n t e r :

L O A D" H I " , 8

Y o uh e a rt h ew h i r r i n ga n ds e et h er e dl i g h t ,b u ti s y o u rp r o g r a mn o wi n m e m o r y

E n t e r : L I S T

t o f i n do u t .

9 8

Page 113: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 113/306

E r a s i n ga F i l e

> S o f a r ,s o g o o d . B u tw h a ti f y o uc h a n g ey o u rm i n da n d w a n tt o t h r o wa f i l e

a w a y ?

, E n t e r :

. O P E N1 5 , 8 , 1 5 ,M S 0 : H I " : C L O S E1 5

T h el e t t e rS s t a n d sf o rS C R A T C H .Y o uw a n tt o s c r a t c ht h ef i l eo u t !

I s I t G o n e ?

L e t ' ss e ei f t h ep r o g r a mi s g o n ef r o mt h ed i s kd i r e c t o r y .

E n t e r :

l o a d " $ " , 8L I S T

t o s e ei f i t i s r e a l l yg o n e .

L e g a lF i l e n a m e s

T h ef i l e n a m e :

c a nb e l o n g( u pt o 1 6 c h a r a c t e r s ) .

c a nh a v el e t t e r s ,n u m b e r s ,o r s o m ep u n c t u a t i o ni n i t .

b u tc a n n o th a v e, o r : o r * o r ? i n i t .

1 G o o dF i l e n a m e s

A s h o r tf i l e n a m ei s b e s tb e c a u s et h e r ei s l e s st o t y p e .U s et h es a m en a m et h a ti s

i n t h eR E Mi n t h ef i r s tl i n eo f t h ep r o g r a m .

™ l G o o dn a m e s :

J U M P I N GC A TG U E S S I N GG A M E

1 S U B & % $ #6 4 D I S KB A C K U P

9 9

Page 114: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 114/306

W r o n gn a m e s :

C A T ,D O G ( h a s ac o m m ai n i t )

T H I SI SM U C HT O OL O N G( t o ol o n g )

I f y o uu s ea f i l e n a m et h a ti s t o ol o n g ,t h ep r o g r a mw i l ls t i l lb es a v e d ,b u tt h en a m ew i l lb e s h o r t e n e dt o 1 6 c h a r a c t e r s .

C o m m a n d s

T h e1 5 4 1d i s k d r i v ei s s m a r t .I t h a si t s o w nm i c r o p r o c e s s o rc h i pa n dm e m o r y

c h i p s .R e a dt h eV I C - 1 5 4 1U s e r ' sM a n u a lt o f i n do u ta l l a b o u ti t .

T h e s et h r e ec o m m a n d sa r eu s e dw i t hf i l e s :

S A V E "f i l e n a m e " , 8t o s a v et h ep r o g r a m

U O A D "f i l e n a m e ? ' , 8t o l o a dt h ep r o g r a m

L 0 A D " $ " , 8 t o s e et h ed i r e c t o r y

U s eO P E N1 5 , 8 , 1 5 , " S 0 : / i t e n a m e " : C L O S E1 5 t o e r a s ea p r o g r a m .

W h e r ey o us e et h ew o r df i l e n a m ey o u m u s tt y p et h en a m eo f a f i l e .

A s s i g n m e n t1 4 :1 . W r i t ea s h o r tp r o g r a m( f o u rl i n e s )a n ds a v ei t o n t h ed i s k .

2 . D o N E Wa n dw r i t ea n o t h e rs h o r tp r o g r a m .S a v ei t .

3 . D oN E Wa n dt h e nd o L O A D " $ "a n dL I S Tt o s e ei f t h ep r o g r a m s w e r es a v e d .

T h e nl o a de a c hp r o g r a m a n dr u ni t .

4 . T r yo u tt h eS C R A T C Hc o m m a n do n o n eo f t h ep r o g r a m s .

5 . R e p e a tt h ep r a c t i c ew i t ht h eS A V E ,L O A D ,d i r e c t o r y ,a n dS C R A T C Hc o m m a nu n t i ly o ua r es u r et h a ty o uu n d e r s t a n d t h e m .

1 0 0

Page 115: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 115/306

I n s t r u c t o rN o t e s1 5 . S o m eS h o r t c u t s

? U s e df o rP R I N TL E T O m i s s i o n

: U s e db e t w e e ns t a t e m e n t so n a l i n e

I N P U T U s e dw i t ha m e s s a g e

I N P U T E r r o rm e s s a g e s

L I S TX - Y L i s t s s p e c i f i cs e c t i o n so f ap r o g r a m

T H E N3 3 I n s t e a do f T H E NG O T O3 3

H a v i n gr e a c h e dR N Da n dt h es a v i n go f p r o g r a m so n d i s k ,t h es p r i n ti s o v e r . A l l

t h ee l e m e n t sa r e i np l a c ef o rt h es t u d e n tt o w r i t es u b s t a n t i a lp r o g r a m s .

T h ec o l o ni s u s e dt o s h o r t e na n dc l a r i f yp r o g r a m sb y p u t t i n gs e v e r a ls t a t e m e n t s

o n o n el i n e .A l i n es h o u l dc o n t a i ns t a t e m e n t st h a th a v es o m e t h i n gi n c o m m o n .

T h ec o l o na l l o w sy o ut o p u ta s h o r ts u b r o u t i n ec o n s i s t i n g o f s e v e r a ls t a t e m e n t s

a f t e ra n I F . T h i sm a k e su s i n ga G O T Ou n n e c e s s a r yf o rr e a c h i n gt h ee x t e n d e ds e g

m e n to f ap r o g r a m .A s h o r t e ra n dm u c hl e s sc l u t t e r e dp r o g r a mr e s u l t s .S o t h e

c o l o nb e c o m e sa p o w e r f u la n dn o n t r i v i a lm e a n so f i m p r o v i n gt h ec l a r i t yo f t h e

p r o g r a m .

T h ec o l o nc a nm e s su p a p r o g r a m ,t o o .B e c a r e f u la b o u ta d d i n go t h e r s t a t e m e

o n t oa G O T O ,a R E M ,o r a n I F l i n e .

A q u e s t i o nm a r ki s a l w a y sp r i n t e do n t h e s c r e e nb y I N P U T .S o a nI N P U Tm e s

s a g es h o u l dn o te n dw i t ha q u e s t i o nm a r k .

Q u e s t i o n s :

1 . W h a ts h o r t c u td o e st h e? g i v e ?

2 . H o wc a ny o ut e l lt h a tt h ew o r dL E Ti s m i s s i n gf r o ma L E Ts t a t e m e n t ?

3 . A n I N P U Ts t a t e m e n th a sa m e s s a g ei n q u o t a t i o nm a r k s .W h a tp u n c t u a t i o n

m a r km u s tf o l l o w t h em e s s a g eq u o t e s ?

1 0 1

Page 116: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 116/306

4 . W h yi s i t s o m e t i m e sg o o dt o p u tt w os t a t e m e n t so nt h es a m el i n e ,s e p a r a t e db ya c o l o n ?

5 . W h a ti s w r o n gw i t h e a c ho f t h e s el i n e s ?

1 0 R E MB E G I N N I N G : G O T O1 0 0 01 0 G O T O 5 0 : S $ = " F A S T "

6 . I f t h ec o m p u t e rp r i n t s? ? a f t e ry o ua n s w e r a nI N P U T , w h a td o e si t m e a n ?

1 0 2

Page 117: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 117/306

Page 118: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 118/306

■̂ . ■• -

A n I N P U TS h o r t c u t

I n s t e a do f :

1 0 P R I N T " E N T E R Y O U R N A M E " 2 0 I N P U T N $

Y o uc a nd o :

1 0 I N P U T" E N T E RY O U R N A M E " ; N $

P u ta s e m i c o l o nb e t w e e nt h em e s s a g eE N T E RY O U RN A M Ea n dt h ev a r i a b l e s .

A n o t h e rI N P U TS h o r t c u t

Y o uc a nI N P U Ts e v e r a lt h i n g si n o n es t a t e m e n t .P u tc o m m a sb e t w e e nt h e

v a r i a b l e s .

R u n :

2 0 I N P U T" L O C A T I O N " ; X , Y

L O C A T I O N ?

Y o us e e : L O C A T I O N ?o n t h es c r e e n .

Y o ue n t e rt w on u m b e r sw i t ha c o m m ab e t w e e nt h e m .

L O C A T I O N ?5 , 6

A n o t h e re x a m p l e :

3 0 I N P U T" M O N T H , D A Y , Y E A R " ; M $ , D , Y

A f t e r t h e? t y p e : A P R I L , 2 9 , 1 9 8 5

1 0 4

Page 119: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 119/306

E r r o rM e s s a g ei n I N P U T

I f y o u d on o te n t e re n o u g ha n s w e r s ,t h ec o m p u t e ra s k s? ? .T h e ny o us h o u l de n t e r

t h er e s t .

E x a m p l e :

3 0 I N P U T" M O N T H , D A Y , Y E A R " ; M $ , D , Y

? M A Y , 1

? ? 1 9 8 5

I f y o ue n t e rt o om a n ya n s w e r s ,t h ec o m p u t e rr e p l i e s :

? E X T R AI G N O R E D

a n dg o e so n w i t ht h ep r o g r a m .

E x a m p l e :

5 5 I N P U T" S L E E P Y ? < Y / N > " ; A $

? N O , F I N E

? E X T R AI G N O R E D

A n o t h e rE r r o rM e s s a g e

R u n :

1 0 I N P U T N , A $

T r yt h e s ep a i r so f a n s w e r s :

1 , B B , 1 1 , 1 B , B

1 0 5

Page 120: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 120/306

T h ee r r o rm e s s a g e? R E D OF R O MS T A R Ti s p u to n t h e s c r e e nw h e n e v e rt h e u s e r

a n s w e r sw i t ha s t r i n g f o ra n u m b e r .

( I t i s o k a yt o a n s w e rw i t ha n u m b e rf o ra s t r i n g ,b e c a u s et h ec o m p u t e rs a y s1 9 8 4

i s a s t r i n g ! )

A L I S TS h o r t c u t

T h e r ea r ef i v ew a y st o u s et h eL I S Tc o m m a n d :

L I S T L i s t sw h o l e p r o g r a m

L I S T4 8 L i s t s l i n e4 8

L I S T5 0 - 7 5 L i s t sa l l l i n e sf r o m5 0 t o 7 5

L I S T - 2 7 L i s t sa l l l i n e sf r o mb e g i n n i n gt o 2 7L I S T 9 0 - L i s t sa l l l i n e sf r o m9 0 t o t h ee n d

A T H E NS h o r t c u t

I n s t e a do f :

1 0 I PA = BT H E N G O T O3 3

U s e :

1 0 I F A = B T H E N3 3

A C o l o nS h o r t c u t

P u ts e v e r a ls t a t e m e n t so n a l i n ew i t ha c o l o n( : ) b e t w e e nt h e m .T h i s s a v e ss p a c e .

I n s t e a do f

1 0 Q = 1 7 * 3

2 0 R = Q + 23 0 P R I N TR

y o uc a nw r i t e :

1 0 Q = 1 7 * 3 : R = Q + 2 : ? R

1 0 6

Page 121: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 121/306

^ W h e ny o uL I S Tt h el i n e ,y o us e e :

, 1 0 Q = 1 7 * 3 : R = Q + 2 : P R I N TR

W h e nt o U s et h eC o l o nS h o r t c u t

U s et h es h o r t c u t :

1 . T o m a k et h ep r o g r a mc l e a r e r .

P u ts i m i l a rs t a t e m e n t so n t h es a m el i n e .E x a m p l e :

I n s t e a do f :

1 0 x = 01 2 Y = 0

1 4 z » 0

w r i t e :

1 0 X = 0 : Y = 0 : Z = 0

2 . T o m a k et h ep r o g r a ms h o r t e r .

3 . T o p u ta R E Mo n t h ee n do f t h el i n e .

E x a m p l e :

4 0 H = X + Y / 6 6 : R E MH I S T H EH E I G H T

T h eC o l o nA f t e ra n I F S t a t e m e n tY o uc a nm a k en e a t e rI F s t a t e m e n t su s i n gc o l o n s .

1 0 7

Page 122: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 122/306

W i t h o u tc o l o n s :

5 0 I F A = 0T H E NG O T O8 0

6 0 B = Q6 2 C = B * D6 6 P R I N T" W R O N G "

8 0 F O R . . . .

W i t hc o l o n s :

5 0 I FA < > 0 T H E N B = Q : C = B * D : P R I N T" W R O N G "

8 0 F O R . . . .

A l lt h es t a t e m e n t si n t h ep a t h" A < > 0i s t r u e "a r eo n t h el i n ea f t e rT H E N .

C a r e f u l !

D o n o t p u ts o m e t h i n go n t h ee n do f a n I F l i n et h a td o e s n ' t b e l o n g .

E x a m p l e :

3 5 I F A = B T H E NP R I N T" A L I K E "

4 0 Q = R

i s n o tt h es a m ea s :

3 7 I F A = BT H E NP R I N T " A L I K E " : Q = R

b e c a u s eQ = R i n l i n e4 0 i s a l w a y sd o n e ,n o m a t t e ri f A = B i s t r u eo r n o t .B u tQ= R i n l i n e3 7 i s d o n eo n l yi f A = B i s t r u e .

S o m eM o r eM i s t a k e sw i t hC o l o n s

T h eR E Ma n dt h eG O T Os t a t e m e n t sm u s tb e l a s to n a l i n e .A n y t h i n gf o l l o w i n gt h e mi s i g n o r e d .

C o r r e c t :

3 5 P = 3 : R E MP I S T H EP R I C E

1 0 8

Page 123: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 123/306

W r o n g :

3 5 R E MP I S T H E P R I C E : P = 3

B e c a u s et h ec o m p u t e ri g n o r e se v e r y t h i n ge l s eo n a l i n e a f t e rr e a d i n gR E M .

C o r r e c t :

4 0 R = P + 1 : G O T O8 8

4 2 S = 3

W r o n g :

4 0 R = P + 1 : G O T O8 8 : S = 3

B e c a u s et h ec o m p u t e rg o e st o l i n e8 8 a n dc a n n e v e rc o m eb a c kt o S = 3 .

1 0 9

Page 124: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 124/306

C o m m a n d s ,S t a t e m e n t s ,a n dL i n e s

C o m m a n d sa n ds t a t e m e n t st e l lt h ec o m p u t e rt o d o s o m e t h i n g .S o f a rw e h a v e

u s e dt h e s ec o m m a n d sa n ds t a t e m e n t s :

P R I N T ,N E W ,R U N ,L I S T ,R E M ,I N P U T ,L E T ,G O T O ,I F ,S A V E ,L O A D

S t a t e m e n t sa r ei n s t r u c t i o n st o t h ec o m p u t e rw h i c ha r eu s u a l l yu s e di n n u m b e r e

l i n e s .C o m m a n d sa r eu s u a l l yu s e da l o n e .N E W ,S A V E ,L O A D ,a n dR U Na r e

c o m m a n d s .

S o m el i n e sh a v es e v e r a ls t a t e m e n t s ,s e p a r a t e db y c o l o n s .

3 0 P R I N T M { C L R } " : P R I N T : L E TZ = 5 5

i s a l i n ew i t ht h r e e s t a t e m e n t s .

A s s i g n m e n t1 5 :

1 . W r i t ea p r o g r a mt h a tu s e se a c ho f t h e s es h o r t c u t sa t l e a s to n c e .

2 . W r i t ea " v a c a t i o n "p r o g r a m .I t a s k sh o wm u c hy o uw a n tt o s p e n d .T h e ni t t e l l s

w h e r ey o us h o u l dg o o r w h a ty o us h o u l dd o .

3 . W r i t ea " c r a z y "p r o g r a mt h a ta s k sy o u rn a m e .T h ep r o g r a mh a st h r e e

f u n n yw a y so f s a y i n gy o ua r ec r a z y .T h ep r o g r a m r a n d o m l y

c h o o s e so n eo f t h e s ea n dp r i n t si t a f t e ry o u rn a m e .

n o

Page 125: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 125/306

I n s t r u c t o rN o t e s1 6 . M o v i n gP i c t u r e s

T h ec u r s o ra r r o wk e y sa r eu s e di n P R I N Ts t a t e m e n t st o m o v et h e c u r s o rt o a n y

p a r t o ft h es c r e e n .T a k ec a r et h a te a c hP R I N Ts t a t e m e n te n d sw i t ha s e m i c o l o no r

e l s et h e c u r s o rw i l ld r o pd o w nt o t h eb e g i n n i n go f t h en e x tl i n ea n dn o tb e w h e r e

y o ut h i n ki t i s !

A l s o ,i f y o ut r y t om o v et h e c u r s o rl o w e r t h a nt h eb o t t o mo f t h es c r e e n ,t h e

w h o l ep i c t u r ew i l ls c r o l l .A s c r o l lw i l la l s oo c c u ri f y o up r i n ti n t h ef o r t i e t h c o l

u m no n l i n e2 5 .T h i sw o n ' ts c r o l l :

1 0 F O R1 = 1 T O 2 4 : P R I N T I : N E X TI2 0 P R I N T" 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 93 0 G O T O3 0

B u ta d da 0 t o t h ee n do f t h es t r i n g( m a k i n g4 0 c h a r a c t e r s )a n dt h e s c r e e nw i l l

s c r o l l .

T o m a k em o v i n gp i c t u r e s ,y o u m u s te r a s et h e o l dp i c t u r eb e f o r ey o ud r a wt h e

n e wo n e .T h i sc o m p l i c a t i o n ,o n t o po f h a v i n gt o k e e pa n a c c u r a t em e n t a lp i c t u r e

o f w h e r et h ei n v i s i b l eP R I N Tc u r s o ri s a t a l l t i m e s ,m a yo v e r w h e l my o u rs t u d e n t .

T h e r e m e d yi s s l o w ,c a r e f u l ,a n dc o m p l e t ea n a l y s i s o ft h eP R I N Ts t a t e m e n t sa n d

k e e p i n gc l o s e t r a c ko f t h ec u r s o rp o s i t i o n .T h eb e s tw a yt o c o n t r o lt h es i t u a t i o ni s

d r a w i n ga g r i dt o r e p r e s e n tt h es c r e e n ,t h e nl i g h t l ys k e t c h i n gt h ec h a r a c t e r so n e

b y o n e( a n de r a s i n gt h e ma s s p a c e sa r ep r i n t e do v e rt h e m ) .

I f y o u rp r o g r a mr u n si n a n u n e x p e c t e dw a y ,i t h e l p st o p u ti n al o to f d e l a y l o o p

s o t h a ty o uc a na c c u r a t e l y s e e t h eo r d e ri n w h i c hP R I N T i n gi s d o n e .

Q u e s t i o n s :

1 . W h a ti s t h ed i f f e r e n c eb e t w e e n" { C L R } "a n d" { H O M E } "i n a P R I N T

s t a t e m e n t ?

I l l

Page 126: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 126/306

2 . S h o wt w ol i n e si n a p r o g r a mt h a tt o g e t h e rw i l lp u ta l e t t e rA o n t h es c r e e na t

t h e p o i n tt h r e el i n e sd o w na n ds e v e ns p a c e sa c r o s s .

3 . I n t h i sl i n e ,t h ew o r dH A P P Yi s p r i n t e d .W h e r ei s t h eP R I N Tc u r s o ra f t e rt h e

w o r di s p r i n t e d ?

1 0 P R I N T" { H O M E } { D O W N } H A P P Y " ;

C a ny o us e e t h eP R I N Tc u r s o ro n t h e s c r e e n ?

4 . N o ww r i t e al i n e2 0 t h a tw i l le r a s et h el e t t e r sA P Pf r o mt h ew o r dp r i n t e di n

q u e s t i o n3 .

1 1 2

Page 127: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 127/306

L e s s o n1 6 . M o v i n gP i c t u r e s

M o v i n gt h e C u r s o rU p a n dD o w n

T o m o v et h ec u r s o r ,p u tC R S Rc h a r a c t e r si n a P R I N Ts t a t e m e n t .

1 0 R E MU P A N D D O W N2 0 P R I N T " { C L R } { 6D O W N }L I N E6 F I R S T " ;2 5 F O RT = l T O 1 0 0 0 : N E X TT

3 0 P R I N T " { H O M E } { 3D O W N }L I N E3 N E X T " ;3 5 F O RT = l T O 1 0 0 0 : N E X TT

4 0 P R I N T " { H O M E } { 8D O W N } L I N E8 L A S T " ;

W h e nw e p r i n t" { 6D O W N } "i n t h i sb o o k ,w e m e a nt o p u ts i xC R S R - d o w n

c h a r a c t e r si n t h eP R I N Tq u o t e sw i t hn o s p a c e sb e t w e e nt h e m .R e m e m b e r ,w h e n

e v e ry o us e es o m e t h i n go n a p r o g r a ml i n eb e t w e e nb r a c e s ,{ } , i t m e a n s s o m e

t h i n gs p e c i a l :{ H O M E }m e a n sp r e s st h eh o m ek e y ; { 2R I G H T }m e a n sp r e s st h e

C R S R - r i g h t k e yt w ot i m e s .

( I fw e w a n t y o ut o p u ta s p a c e ,w e w i l l

l e a v ea s p a c eo r s a y" { 4S P A C E S } "w h e n

m o r et h a nj u s ta f e wa r en e e d e d . )

R e m e m b e rt h a tt h e" { D O W N } "c h a r a c t e r

l o o k sl i k ea n i n v e r s eQ , " { C L R } "l i k e

a n i n v e r s eh e a r t ,a n d" { H O M E } "l i k ea n

i n v e r s eS .

1 1 3

Page 128: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 128/306

T o R e a c h aS p o to n t h eS c r e e n

1 . S t a r ty o u rP R I N Tl i n eb y m o v i n gt h e c u r s o rt o t h eh o m ep o s i t i o nw i t h

" { H O M E } "o r a c l e a rs c r e e n" { C L R } " .

2 . T h e nm o v et h e c u r s o rd o w na s f a ra s y o uw a n t .

3 . N o wP R I N Tr i g h t - C R S Rc h a r a c t e r st o m o v eo v e ra s f a ra s y o uw a n t .( O ry o u

c a nu s e s p a c e si n s t e a do f " { R I G H T } "c h a r a c t e r s . )

4 . T h e nP R I N Tw h a ty o uw a n t .

A M o v i n gP i c t u r e

T r yt h i sp r o g r a m :

1 0 R E M: : : B I R D: : :2 0 P R I N T " { C L R } { 6D O W N } 1 1 72 5 P R I N T "{ 7 R I G H T }{ P U R } " ;3 0 P R I N T " U Q I { 3L E F T } 1 1 ;4 0 F O RT = l T O 2 0 0 : N E X TT

5 0 P R I N T " J Q K { 3L E F T } " ;6 0 F O RT = l T O 2 0 0 : N E X TT7 0 G O T O 3 0

H e r e" { 3L E F T } " m e a n st h r e el e f t - C R S Rc h a r a c t e r s( r e m e m b e rt o u s et h eS H I F T

k e y ) .W eu s e" { 7R I G H T } "f o rr i g h t - C R S Rc h a r a c t e r s .

D oy o ur e m e m b e rw h a tt o d o w h e ny o us e e" { P U R } " ?I f y o uf o r g o t ,l o o ka t l e s

s o n2 .

L o o kc l o s e l ya t l i n e s3 0 a n d5 0 .W eh a v ea n o t h e rs y m b o lt h a tm a k e sf i n d i n gt h e

c o r r e c tk e ye a s i e r .A n u n d e r s c o r e dc h a r a c t e rm e a n st o h o l dd o w nt h eS H I F Tk e y

w h i l ep r e s s i n g t h ec h a r a c t e r .I n t h i sc a s eS H I F T e dU Q Ia n d S H I F T e dJ Q Kw i l l

p r o d u c et h eg r a p h i c sc h a r a c t e r s t h a ta p p e a ro n t h er i g h to f e a c ho f t h ek e y s .

W h i c hl i n e sa r et h ed e l a yl o o p s ?

I f y o u d oi t c o r r e c t l y ,y o uw i l lg e t as i n g l ep u r p l eb i r ds l o w l yf l a p p i n gi t s w i n g si n

t h em i d d l eo f t h es c r e e n .I f y o ug e ta l o to f b i r d s ,c h e c kt h a ty o u h a v et h es e m i

c o l o na t t h ee n d so f t h eP R I N Tl i n e s ,a n dt h a tl i n e s3 0 a n d5 0 h a v et h eb i r d s ,

t h r e el e f t - C R S Rc h a r a c t e r s ,a n d n os p a c e s .

1 1 4

Page 129: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 129/306

H o wd o e si t w o r k ?

R e a dl i n e s3 0 a n d5 0 c h a r a c t e rb y c h a r a c t e r .

L i n e3 0 p r i n t sl e f tw i n g ,b o d y ,r i g h tw i n g .N o wt h ei n v i s i b l eP R I N Tc u r s o ri s t o

t h er i g h to f t h eb i r d ,s o t h r e el e f t - C R S Rc h a r a c t e r sb r i n g t h e c u r s o rb a c ko v e rt h e

l e f tw i n go f t h eb i r d .

L i n e4 0 w a i t sf o ry o ut o s e et h i sb i r dw i t hi t s w i n g sd o w n .

L i n e5 0 p r i n t sa b i r dw i t hw i n g su p ,o n t o po f t h ef i r s tb i r d .T h e ni t m o v e st h e

c u r s o rb a c ko v e rt h el e f tw i n go f t h eb i r d .

L i n e6 0 w a i t sf o ry o ut o s e et h i sb i r dw i t hi t s w i n g su p .T h e nt h ec y c l er e p e a t s .

1 1 5

Page 130: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 130/306

E r a s i n gO l dP i c t u r e s

I n " B i r d "w e e r a s e dt h ed o w n - w i n gb i r db y w r i t i n ga n u p - w i n gb i r do v e ri t .

S u p p o s ew e w a n tt h e b i r dt o f l ya w a y ?

W em u s te r a s e t h eo l db i r dw i t hs p a c e sb e f o r ew e p r i n tt h en e wb i r d .

C h a n g el i n e s 1 0 ,2 0 , 2 5 , 4 5 ,a n d6 5 i n " B i r d " :

1 0 R E MF L YA W A Y2 0 P R I N T " { C L R } { 2 2D O W N } "2 5 P R I N T " { P U R } "3 0 P R I N T " U C t f { 3L E F T } " ; : R E M P R I N T D O W NW I N G S4 0 F O RT = l T O 2 0 0 : N E X TT

4 5 P R I N T " { 3 S P A C E S } { 2L E F T } { U P } " ; : R E ME R A S EB I R D ,{ S P A C E } G O U P

5 0 P R I N T " J Q K { 3L E F T } " ; : R E MP R I N TU P W I N G S6 0 F O RT = l T O 2 0 0 : N E X TT

6 5 P R I N T " { 3 S P A C E S } { 2 L E F T } { U P } " ?7 0 G O T O3 0

A s s i g n m e n t1 6 :

1 . W r i t ea p r o g r a mt h a tm a k e sa b a l lm o v ea c r o s s t h es c r e e n ,f r o ml e f tt o r i g h t .B e

s u r et o e r a s e t h eo l db a l lb e f o r eP R I N T i n gt h en e wb a l l .T h e nc h a n g et h ep r o

g r a ms o t h eb a l lm o v e sf r o mr i g h tt o l e f t .

2 . W r i t ea p r o g r a mt o m a k ey o u rf i r s tn a m ep r i n to n t h e s c r e e ni n r e d ,t h e nb l i n k

t o g r e e n ,a n db a c kt o r e d ,a n ds o o n .T h en a m ed o e s n ' tm o v eo n t h es c r e e n .

1 1 6

Page 131: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 131/306

I n s t r u c t o rN o t e s1 7 . F O R - N E X TL o o p s

A l o o pi s m a d eu p o f aF O Rs t a t e m e n t( w h i c hm a yc o n t a i na S T E Pv a l u e )a n daN E X Ts t a t e m e n t .T h e s es t a t e m e n t sm a yb e s e p a r a t e db y s e v e r a ll i n e sa n dy e t a r e

i n t e r d e p e n d e n t .T h es t u d e n tb u i l d so n t h en o t i o no f ad e l a y l o o pa n dl e a r n st h e

u t i l i t yo f r e p e a t i n ga s e to f s t a t e m e n t si n t h em i d d l eo f t h el o o p .

N e s t e dl o o p sa r ei n t r o d u c e db y u s i n ga n e x a m p l ew h e r et h ei n s i d el o o pi s a d e l a y

l o o p .

S u b t l ep o i n t sm a ya r i s ew h i c ha r en o td i s c u s s e di n t h i sl e s s o n .T h el o o pi s a l w a y s

t r a v e r s e da t l e a s to n c e ,b e c a u s et h et e s tf o re x i ti s m a d ea t t h eN E X Ts t a t e m e n t

w h i c hc a n b er e a c h e d o n l yb y g o i n gt h r o u g ht h el o o p .

T h eF O Rs t a t e m e n ti s e v a l u a t e dj u s to n c ea t t h et i m et h el o o pi s e n t e r e d .I t p u t s

t h es t a r t i n gv a l u eo f t h el o o pv a r i a b l ei n t ov a r i a b l e s t o r a g ew h e r ei t i s t r e a t e dj u s t

a s a n yo t h e rn u m e r i c a lv a r i a b l e .T h eS T E Pv a l u e ,t h ee n d i n gv a l u e ,a n dt h ea d

d r e s s o f t h ef i r s ts t a t e m e n ta f t e rt h eF O Ra r ep u to n a s t a c k .

F r o mn o wo n ,a l l t h el o o p i n ga c t i o n t a k e sp l a c ea t t h eN E X Ts t a t e m e n t .U p o n

r e a c h i n gN E X T ,t h el o o pv a r i a b l ei s i n c r e m e n t e db y t h ev a l u eo f t h eS T E Pa n d

c o m p a r e dw i t ht h ee n dv a l u e .I f t h el o o pv a r i a b l ei s l a r g e rt h a nt h ee n dv a l u e( o r

s m a l l e ri n t h ec a s e o f an e g a t i v eS T E P ) ,N E X Tp a s s e sc o n t r o lt o t h es t a t e m e n t

a f t e ri t s e l f .O t h e r w i s e ,i t s e n d sc o n t r o lt o t h es t a t e m e n ta f t e rF O R .

B e c a u s eB A S I Ct r e a t st h el o o pv a r i a b l ej u s tl i k ea n yo t h e rv a r i a b l e ,i t c a nb e u s e d

o r c h a n g e di n t h eb o d yo f t h el o o p .J u m p i n gi n t ot h em i d d l eo f al o o pi s u s u a l l ya

d i s a s t e r .J u m p i n go u to f al o o pb e f o r et h eN E X Tc a u s e sa n e x i ta n di n s o m ec a s e s

( e s p e c i a l l yw h e r es u b r o u t i n e sa r ei n v o l v e d )m a yc r e a t eh a r d - t o - f i n db u g s .

Q u e s t i o n s :

1 . W h a ti s t h el o o pv a r i a b l e

i nt h i s

l i n e ?

1 0 F O RQ = l T O 1 0 : P R I N TT $ : N E X TQ

1 1 7

Page 132: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 132/306

Page 133: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 133/306

L e s s o n1 7 . F O R - N E X TL o o p s

R e m e m b e rt h ed e l a yl o o p ?T h ec o m p u t e rc o u n t e df r o m1 t o 2 0 0 0a n dt h e nw e n to n .

3 0 F O RT = l T O 2 0 0 0 : N E X TT

T h ec o m p u t e ri s s m a r t e rt h a nt h a t .I t c a nd o o t h e rt h i n g sw h i l ei t i s c o u n t i n g .

R u nt h i s :

1 0 R E M C O U N T I N G

2 0 P R I N T "{ C L R } 1 13 0 F O R1 = 5 T O 2 0

4 0 P R I N TI

5 0 N E X TI

T h el o o p c a ns t a r to n a n yn u m b e ra n de n do n a n yh i g h e rn u m b e r .T r yc h a n g i n g

l i n e3 0 i n t h e s ew a y s :

3 0 f o r 1 = 1 0 0t o 1 0 1

3 0 F O R1 = 7 T O 1 3

3 0 F O R1 = 1 . 3T O 5 . 7

M a r kU p Y o u rL i s t i n g s

S h o ww h e r et h el o o p sa r eb y a r r o w s :

c

1 0 R E MO N P A P E R2 0 P R I N T" { C L R } 1 13 0 F O R1 = 0 T O 7

4 0 P R I N TI5 0 N E X TI

) '

1 1 9

Page 134: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 134/306

Page 135: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 135/306

T h eo u t s i d el o o ps t a r t si n l i n e4 0 a n de n d si n l i n e7 0

T h ei n s i d el o o pi s i n l i n e6 0 .

T h e s ea r e n e s t e dl o o p s .T h e ya r el i k ea s e to f

t o yb o x e st h a tf i t i n s i d ee a c ho t h e r .

L o o pV a r i a b l e s

T o m a k es u r et h a te a c hF O Rs t a t e m e n tk n o w sw h i c hN E X Ts t a t e m e n t b e l o n t o

i t , t h eN E X Ts t a t e m e n te n d si n t h el o o p v a r i a b l en a m e .L o o ka t l i n e6 0 :

6 0 F O R1 = 1 T O 2 0 0 0 : N E X TI

I i s t h el o o pv a r i a b l ef o rt h el o o ps t a r t i n gi n l i n e4 0 :

4 0 F O RT = 1 2 T O 0 S T E P - 1

• • • • •

7 0 N E X TT

T i s t h el o o pv a r i a b l e .

B a d l yN e s t e dL o o p s

T h ei n s i d el o o pm u s tb e a l l t h ew a yi n s i d e :

R i g h t :

C 2 5 F O RX = 3T O 7

3 0 F O R Y = 3T O 7

4 0 P R I N TX * Y5 0 N E X T Y6 0 N E X T X

1 2 1

Page 136: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 136/306

W r o n g :

- 2 5 F O RX = 3 T O 7

3 0 F O R Y = 3T O 7

4 0 P R I N TX * Yk 5 0 N E X T Xk 6 0 N E X TY

A s s i g n m e n t1 7 B :

1 . W r i t ea p r o g r a mt h a tp r i n t sy o u rn a m e1 5 t i m e s .

2 . M a k ei t i n d e n te a c ht i m eb y t w os p a c e sm o r e .I t w i l lg o d i a g o n a l l yd o w nt h e

s c r e e n .U s eT A Bi n a l o o p .

3 . N o wm a k ei t w r i t ey o u rn a m e2 3 t i m e s ,s t a r t i n ga t t h eb o t t o mo f t h es c r e e n

a n dg o i n gu p .U s et h ec u r s o r - u pk e yi n a P R I N Ts t a t e m e n ta n dp u ti t a l l i n a

l o o p .

4 . N o wm a k ei t w r i t ey o u rn a m eo n o n el i n e ,y o u rf r i e n d ' sn a m eo n t h en e x t ,a n d

k e e ps w i t c h i n gu n t i le a c hn a m ei s w r i t t e nf i v et i m e s .M a k ee a c hn a m ea d i f

f e r e n tc o l o r .

5 . W r i t ea p r o g r a mw i t hl o o p sn e s t e dt h r e ed e e p .D o t h e o u t e rl o o pt h r e et i m e s

a n dh a v ei t p r i n tS I N G .M a k ei t

c h a n g et h es c r e e nc o l o re a c ht i m et h r o u g h .

T h en e x tl o o pp r i n t sT R A .H a v ei t

l o o pt h r e et i m e s .T h ei n n e r m o s tl o o pp r i n t s

L A t h r e e t i m e s .

1 2 2

Page 137: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 137/306

Page 138: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 138/306

3 . T h ei d e ao f ap o i n t e rh e l p si n t h i n k i n ga b o u tt h eD A T As t a t e m e n t s .E x p l a i n

h o w .

4 . C a ny o up u tn u m e r i c a ld a t aa n ds t r i n gd a t ai n t h es a m eD A T As t a t e m e n t ?

5 . W h a th a p p e n si f y o ut r y t oR E A Da s t r i n gi n t oa n u m e r i c a lv a r i a b l e ?

6 . C a ny o uc h a n g et h ei t e m si n a D A T As t a t e m e n tw h i l et h ep r o g r a mr u n s ?

1 2 4

Page 139: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 139/306

L e s s o n1 8 . D A T A , R E A D ,R E S T O R E

T w oK i n d so f D a t a

T h e r ea r et w ok i n d so f d a t ai n y o u rp r o g r a m s :

1 . T h ek i n dy o uI N P U To r G E Tt h r o u g ht h ek e y b o a r d .

1 0 R E MF I R S T K I N DO F D A T A2 0 P R I N T M { C L R } { 3D O W N } 1 13 0 I N P U T "Y O U RP E T P E E V E " ; P $4 0 P R I N T " { D O W N }R E A L L Y I "5 0 P R I N T " { D O W N } { R E D }Y O UD O N ' T L I K E{ D O W N } { G R N } "6 0 P R I N T " { S H I F T - S P A C E } " ; P $ ; " { W H T } "

I n t h i sp r o g r a m ,P $ i s d a t a e n t e r e db y t h eu s e ra s t h ep r o g r a mr u n s .

2 . T h ek i n dt h a ti s s t o r e di n t h ep r o g r a ma t t h et i m ei t i s w r i t t e n .

1 0 R E MT H ES E C O N D K I N DO F D A T A

2 0 P R I N T " { C L R } { 3D O W N } "3 0 X = 5 7

4 0 Y $ = " F L A V O R S "5 0 P R I N TX ; Y $

I n t h i sp r o g r a m ,X a n dY $ a r ed a t as t o r e di n t h ep r o g r a m b yt h ep r o g r a m m e

w h e nt h ep r o g r a mw a sw r i t t e n .

S t o r i n gL o t so f D a t a

I t i s o k a yt o s t o r es m a l la m o u n t so f d a t ai n L E Ts t a t e m e n t s .B u ti t i s a w k w a r dt o

s t o r e l a r g ea m o u n t so f d a t at h a tw a y .

U s et h eD A T As t a t e m e n tt o s t o r el a r g ea m o u n t so f d a t a .

U s et h eR E A Ds t a t e m e n tt o g e t t h ed a t af r o mt h eD A T As t a t e m e n t .

1 0 R E M L O T SO F D A T A

2 0 P R I N T " { C L R } { 3D O W N } "3 0 D A T AS U N D A Y , M O N D A Y , T U E S D A Y , W E D N E S D A Y , T H U R

R I D A Y ,S A T U R D A Y

4 0 R E A DD 1 $ : R E A D D 2 $ : R E A D D 3 $ : R E A DD 4 $

6 0 P R I N T D 1 $ , D 2 $ , D 3 $ , D 4 $

1 2 5

Page 140: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 140/306

A f t e r t h ep r o g r a mr u n s ,b o xD l $h o l d st h ef i r s ti t e mi n t h eD A T Al i s t( S U N D A Y

a n db o xD 2 $h o l d st h es e c o n d( M O N D A Y ) ,e t c .

S t r a n g eR u l e s

1 . I t d o e s n ' tm a t t e rw h e r et h eD A T As t a t e m e n ti s i n t h ep r o g r a m .

D o t h i s :C h a n g el i n en u m b e r3 0 i n t h ea b o v ep r o g r a mt o l i n en u m b e r9 0 .R u n

t h ep r o g r a m .I t w o r k sj u s tt h es a m e .

2 . I t d o e s n ' tm a t t e rh o wm a n yD A T As t a t e m e n t st h e r ea r e .

D o t h i s :B r e a kt h eD A T As t a t e m e n ti n t ot w op a r t s :

9 0 D A T AS U N D A Y , M O N D A Y , T U E S D A Y9 1 D A T AW E D N E S D A Y , T H U R S D A Y , F R I D A Y , S A T U R D A Y

R u nt h ep r o g r a m .I t w o r k sj u s tt h es a m ea s b e f o r e .

1 2 6

Page 141: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 141/306

I t I s P o l i t ef o rt h eR E A DS t a t e m e n tt o P o i n t

R E A Du s e sa p o i n t e r .I t a l w a y sp o i n t st o t h en e x ti t e mt o b e r e a d .

W h e nt h ep r o g r a ms t a r t s ,t h eR E A Dp o i n t e r p o i n t st o t h ef i r s ti t e mi n t h ef i r s t

D A T As t a t e m e n ti n t h ep r o g r a m .( T h a ti s , t h eD A T As t a t e m e n t w i t ht h el o w e s t

l i n en u m b e ro f a l l D A T As t a t e m e n t si n t h ep r o g r a m . )

E a c ht i m et h ep r o g r a me x e c u t e sa R E A Ds t a t e m e n t , t h e p o i n t e rm o v e st o t h en e x t

i t e mi n t h eD A T Al i s t .

I f t h e p o i n t e rg e t st o t h ee n do f o n eD A T As t a t e m e n t ,i t a u t o m a t i c a l l yg o e st o t h e

n e x tD A T As t a t e m e n t .( T h a ti s , t o t h eD A T As t a t e m e n tw i t ht h en e x th i g h e rl i n e

n u m b e r . )

I t d o e s n ' tm a t t e ri f t h e r e a r em a n yl i n e sb e t w e e n .

D o t h i s :C h a n g el i n e9 0 b a c kt o l i n e3 0 .( L e a v el i n e9 1 a l o n e . )

3 0 D A T AS U N D A Y , M O N D A Y , T U E S D A Y

9 1 D A T A W E D N E S D A Y , T H U R S D A Y , F R I D A Y , S A T U R D A Y

R u nt h ep r o g r a m .I t w o r k sj u s tt h es a m e .

F a l l i n gO f ft h eE n do f t h eD A T AP l a n k s

W h e nt h ep o i n t e rr e a c h e st h el a s ti t e mi n t h e

l a s tD A T As t a t e m e n ti n t h ep r o

g r a m ,t h e r ea r en o m o r ei t e m sl e f tt o R E A D .

I f y o ut r y t o R E A Da g a i n ,y o uw i l l

s e e a n e r r o rm e s s a g e :

O U TO PD A T AE R R O RI N X X

E r a s el i n e9 1 a n dr u na g a i n .

1 2 7

Page 142: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 142/306

Page 143: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 143/306

I n s t r u c t o rN o t e s1 9 . S o u n dE f f e c t s

T h e6 5 8 1S o u n dI n t e r f a c eD e v i c e( S I D ) c h i pi n t h eC o m m o d o r e6 4 p r o d u c e s

s o u n d a n dm u s i c . T h i sl e s s o n i n t r o d u c e ss o m ef e a t u r e so f t h e c h i pt h a ta r eu s e f u l

f o rm a k i n g s o u n de f f e c t s .M u s i c a la p p l i c a t i o n s a r ec o v e r e di n al a t e rl e s s o n .T h e

S I Dc h i pi s c o n t r o l l e db y P O K E i n gn u m b e r si n t oi t sr e g i s t e r s .T h ec h i pi s v e r s a t i l

b u tf u s s yt o p r o g r a m .

S o u n di s s e n tt o t h eT Vs p e a k e ra s p a r t o ft h ec o m p o s i t es i g n a l .I f y o uu s ea c o l o r

m o n i t o ri n s t e a d ,c o n s u l t t h eC o m m o d o r e6 4 m a n u a lt o s e e t h ep i n - o u tf o rs e n d

i n gt h es o u n ds i g n a lt o a n a m p l i f i e ra n ds p e a k e r .

T h ec h i pc a np r o d u c eu p t o t h r e ei n d e p e n d e n tv o i c e s o rs o u n d sa t t h es a m et i m e .

T h ep i t c h o fe a c hv o i c ei s s e tb y P O K E i n gt w ob y t e s .T h i s a l l o w sv e r yp r e c i s ei n

t o n a t i o n ,a f e a t u r el a c k i n gi n m a n yo t h e rh o m ec o m p u t e r s .F o re x a m p l e ,y o uc a n

e x p e r i m e n t w i t ht h ev a r i o u st e m p e r a m e n t so f t h em u s i c a ls c a l e .

T h e r ea r ef o u rc h o i c e sf o rt h ew a v e f o r mo f e a c hv o i c e ,p r o d u c i n gd i f f e r e n tt i m

b r e sf o rt h ev o i c e s :f l u t e ,b a n j o ,e t c .O n eo f t h e c h o i c e si s w h i t en o i s e ,w h i c hi s

v e r yu s e f u lf o rp r o d u c i n gs o u n de f f e c t s( d r u m s ,g u n f i r e ,t h u n d e r ,w i n d ,w a v e s ) .

T h el o u d n e s so f t h et o t a ls o u n do u t p u ti s s e tb y o n eP O K E ,a n de a c hv o i c ec a nb e

s w i t c h e di n t oa p r o g r a m m a b l ef i l t e rw h i c hm o d i f i e si t s h a r m o n i cc o n t e n t , f u r t

a l t e r i n gt h et i m b r e .

E a c hv o i c eh a sa c o n t r o l l a b l ep a t t e r ni n l o u d n e s sf r o ms t a r tt o e n d .F o u rn u m b e r

c o n t r o lt h en o t es h a p e :t w of o ri t s s t a r t( t h e a t t a c kf o l l o w e db y a r e l e a s e )a n do n e

e a c hf o ri t s l o u d n e s sa s i t i s h e l d( t h e s u s t a i nv a l u e )a n dt h er a p i d i t yw i t hw h i c hi t

d e c a y sa f t e rt u r n i n gi t o f f( i t sd e c a y ) .T h e s eA D S Rp a r a m e t e r sa r ef u l l yd e s c r i b e d

i n t h e" M u s i c "l e s s o n .

T h el e n g t h o f t h en o t ei s c o n t r o l l e db y a d e l a y l o o pw h i c h y o uw r i t ei n t ot h ep r o

g r a m ,r a t h e rt h a nb y t h eS I Dc h i p .T h a ti s , y o u m u s ts t a r tt h en o t ew i t ha P O K E ,

t h e ng o i n t oa t i m i n gl o o p ,a n df i n a l l ys t o p t h en o t ew i t ho n eo r t w om o r e

P O K E s .

1 2 9

Page 144: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 144/306

Q u e s t i o n s :

1 . W h a tt h i n g sm u s t y o uP O K Et o g e ta s o u n d ?

2 . H o wd o y o ut u r no f fa l l t h ev o i c e sa t o n c e ?

3 . W h ym u s t y o ub e c a r e f u lo f t h eb o xn u m b e rt h a ty o uP O K E ?

4 . W h a tn u m b e rg i v e s t h e l o u d e s ts o u n d ?

1 3 0

Page 145: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 145/306

L e s s o n1 9 . S o u n dE f f e c t s

T u r nu p t h es o u n d o nt h eT Vn o w .

P O K ES I Da F e wT i m e s

N o ,n o tS i d n e y !S I Di s t h e c h i pi n t h ec o m p u t e rt h a tm a k e st h es o u n d sa n d m u s i

c a ln o t e s .

T h e r ea r e1 4 b o x e si n m e m o r yt h a ta r er i g h ti n s i d et h eS I Dc h i p .P O K Et e l l st h e

c o m p u t e rt o p u ta n u m b e rf r o m0 t o 2 5 5i n t oa m e m o r yb o x .

P O K E5 4 2 7 3 , 8 3m e a n sp u tn u m b e r2 3 i n b o x5 4 2 7 3 .

T h e n u m b e r sp u ti n t ot h eS I Dc h i pt e l li t w h a t

k i n do f s o u n dt o m a k e .

J o h n n yO n eN o t e

E n t e rt h i s :

1 0 R E MS I D T U N E SU P O N " C O N C E R TA "

2 0 P O K E5 4 2 7 3 , 2 3 : P O K E5 4 2 7 2 , 1 8 12 2 P O K E5 4 2 9 6 , 1 5 : R E M V O L U M E1 5

2 4 P O K E5 4 2 7 7 # 9 : R E M A T T A C K - D E C A Y2 6 P O K E 5 4 2 7 8 , 0 : R E MS U S T A I N - R E L E A S E3 0 P O K E5 4 2 7 6 , 3 3 : R E MT I M B R E

8 5 F O RT = l T O 1 0 0 0 : N E X TT

9 0 P O K E5 4 2 7 6 , 3 2 : R E M V O I C E O F F9 1 P O K E5 4 2 7 3 , 0 : R E MS O U N D O F F

1 3 1

Page 146: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 146/306

S a v eb e f o r er u n n i n g !

C a r e f u l !T h e n u m b e r sa f t e rt h eP O K E

m u s tb e e x a c t l yr i g h t .I f n o t ,y o um a ym e s su p t h ec o m p u t e r ' st e m p o r a r ym e m o r y

w h e ny o ur u nt h ep r o g r a m .T h i sw i l ln o t

h a r mt h ec o m p u t e r , b u ty o uw o u l dh a v e

t o t u r n t h ec o m p u t e ro f f ,t h e no n a g a i n ,

a n d y o u w o u l dl o s et h ep r o g r a my o u

h a v ei n m e m o r y .

R u ni t . Y o us h o u l dh e a rt h em i d d l eA ,

t h en o t eu s e dt o t u n eo r c h e s t r a s .

I f y o u d on o t h e a ra s o u n d ,f i r s tc h e c k

t h a tt h eT Vs o u n di s l o u de n o u g h .T h e n

c h e c kt h a te v e r yn u m b e ri n t h ep r o g r a m

i s c o r r e c t .

B u t ,H e a v e n s ,S o M u c hW o r kf o rO n l yO n eN o t e ?

Y e s !I t t a k e sf i v eP O K E st o s e tu p t h es o u n dc h i p( l i n e s2 0 , 2 2 , 2 4 ,a n d2 6 ) .I t

t a k e so n em o r eP O K Et o t u r no n t h es o u n d( l i n e3 0 )a n dt w ot o t u r ni t o f f( l i n e s

9 0 a n d9 1 ) .

B u tn o t e sa r ec h e a p e rb y t h ed o z e n .Y o uc a nm a k em o r en o t e s ,e v e na w h o l e

s o n g ,w i t ho n l yt w om o r eP O K E sp e rn o t e ,a n di n f a c t ,i f y o u d oi t i n a l o o pa n d

u s eD A T A ,i t i s a l m o s te a s y .

L e t ' se x p l o r e t h eS I Dc h i ps o m em o r e .

1 3 2

Page 147: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 147/306

T o n e sb y t h eB u s h e l

E n t e r :

1 0 R E M* * * * * * * T O N E S * * * * * * *1 1 t

1 5 R E M C H I PB A S EA D D R E S S1 6 C = 5 4 2 7 21 7 R E M V O I C E1

1 8 :

1 9 R E M R E G I S T E R A D D R E S S E S2 0 L O = C : R E M H I F R E Q U E N C YN O .

2 1 H I = C + 1: R E M L O F R E Q U E N C YN O .

2 4 T M = C + 4: R E M T I M B E RO F N O T E2 5 A D = C + 5: R E M A T T A C K - D E C A Y2 6 S R = C + 6: R E M S U S T A I N - R E L E A S E2 9 V L = C + 2 4 : R E ML O U D N E S S3 0 R E M C L E A RT H EC H I P3 1 F O RL = CT O C + 2 4 : P O K E L , 0 : N E X T4 0 R E M A D S RS O U N D ,L O U D N E S S

4 2 P O K EA D , 94 3 P O K ES R , 2 * 1 6 + 84 4 P O K EV L # 1 5 + 05 0 R E M P I C KN O T E5 2 P R I N T 1 1{ C L R }{ D O W N }E N T E R N O T E : < 2T O 2 5 3 > M5 3 P R I N T 1 1{ D O W N }( 0 T O E N DP R O G R A M{ D O W N }"

5 4 I N P U T N5 6 I F N = 0T H E NL I S T

6 0 P O K E H I , N : R E M- P O K E N O T E

6 1 P O K E L O , 06 5 P O K E T M , 3 3 : R E M S T A R T N O T E6 6 R E M3 3 I S A S A W T O O T HW A V E F O R M7 0 F O RT = l T O 1 0 0 0 : N E X T7 2 P O K ET M , 3 2 : R E M E N DN O T E

7 3 P O K E H I , 0: R E M T U R N O F F S O U N D

8 0 G O T O4 0

S a v et o t a p eo r d i s kb e f o r er u n n i n g .

T r yt h e s en u m b e r s :2 , 2 2 ,2 2 2 .

T h e nt r y t h e s e : 2 0 , 4 0 , 8 0 ,1 6 0 .T h e yp l a yo c t a v e so f t h el o w e s tn o t e .T r yo t h e r

n u m b e r s .

S I Dh a sa b l o c ko f 2 4 b o x e ss t a r t i n ga t a d d r e s s5 4 2 7 2 . L i n e 1 6s t o r e st h i sa d d r e s s .

L i n e s2 0 t o 2 9 m a k ea n ds t o r et h ea d d r e s s e so f m o r eo f S I D ' sb o x e s .

1 3 3

Page 148: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 148/306

L i n e 3 1 p u t sa 0 i n e a c ho f S I D ' s b o x e s ,w h i c ht u r n si t o f fc o m p l e t e l y !

I t t a k e st w ob o x e s ,c a l l e dH I a n dL O ,t o t e l lS I D w h a tt o n et o p l a y .H I m a k e sa

b i gd i f f e r e n c ei n t h ep i t c h ,a n dL Oi s f o rf i n e - t u n i n g .I n t h i sp r o g r a mw e c h a n g eo n l yt h en u m b e ri n H I .L Or e m a i n sa t 0 .

L i n e6 5 t u r n st h en o t eo n ,a n da l s os a y st h a tt h en o t es h o u l db e a s a w t o o t hw a v e

f o r m .W ew i l lc o m eb a c kt o t h i sl a t e r .

L i n e 7 0s a y s t h en o t es h o u l db e a b o u to n es e c o n dl o n g .

L i n e 7 2t u r n st h en o t eo f f .T h a ti s , i tt u r n st h es a w t o o t ho f f .

B u ty o uw o u l ds t i l lh e a ra f a i n tl a s t i n gs o u n du n l e s sy o ua l s ot u r n t h es o u n do f f .T h i si s d o n ei n l i n e7 3 b y p u t t i n ga 0 i n t h eH I b o x .

1 3 4

Page 149: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 149/306

P i c c o l o ,P i a n o ,o r W h a t ?

S I Di s a o n e - p l a y e rb a n d .Y o uc a ng e ti t t o p l a yd i f f e r e n ti n s t r u m e n t sb y c h a n g i n

t h en u m b e r sP O K E di n t ot h er e g i s t e rc a l l e dT Ma t a d d r e s s5 4 2 7 2 + 4i n l i n e s6 5

a n d7 2 o f T O N E S .

T Ms t a n d sf o r t i m b r e .T i m b r ei s t h eq u a l i t yo f t h es o u n dt h a tm a k e so n ei n

s t r u m e n td i f f e r e n tf r o ma n o t h e ri n s t r u m e n t .

l i n e6 5

s t a r t

1 7

3 3

6 5

1 2 9

l i n e7 2

s t o p

1 6

3 2

6 4

1 2 8

w a v e f o r m

t r i a n g l e

s a w t o o t h

p u l s e

w h i t en o i s e

I f y o uu s ep u l s ey o ua l s on e e dt o P O K Ea n u m b e rf r o m0 t o 1 5 i n t or e g i s t e r

5 4 2 7 5 .T h es o u n di s t h i na n dr e e d yf o rl o wn u m b e r sa n dm o r em e l l o wf o rn u mb e r sn e a r1 5 .

D e s c r i b et h es o u n do f e a c hw a v e f o r mh e r e :

S a w t o o t h

T r i a n g l e

N o i s e

P u l s e ,5 0

P u l s e ,9 -

S o u n dE f f e c t s

Y o uc a nd o m a n yt h i n g st o g e td i f f e r e n ts o u n de f f e c t s :

D i f f e r e n tf r e q u e n c i e s ( 5 4 2 7 0 , 5 4 2 7 1 )

D i f f e r e n tw a v e f o r m s ( 5 4 2 7 5 , 5 4 2 7 6 )

D i f f e r e n tA D S Rn u m b e r s( 5 4 2 7 7 , 5 4 2 7 8 )

D i f f e r e n tl o u d n e s s ( 5 4 2 9 6 )

1 3 5

Page 150: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 150/306

Y o uc a nu s ea l o o pt o c h a n g et h e

n u m b e r si n t h e s eb o x e sw h i l et h e

s o u n di s g o i n go n !

T r yt h i s :

1 0 R E M G O I N GU P2 0 C = 5 4 2 7 2 : L O = C : H I = C + 1

2 2 A D = C + 5: S R = C + 6

2 4 V L = C + 2 4 : T M = C + 43 0 F O RL = C . T O C + 2 4 : P O K E L , 0 : N E X T3 2 P O K E V L , 1 53 4 P O K EA D , 9 : P O K ES R , 2 * 1 6 + 83 5 P O K ET M , 3 34 0 F O R1 = 2 T O 2 2 2

4 2 P O K E H I , I : R E M P I T C H C H A N G E S4 9 N E X TI

5 0 P O K ET M # 3 2 : P O K EH I , 0

S a v et o t a p e o rd i s kb e f o r er u n n i n g .

s p e a k e rr m

A s s i g n m e n t1 9 :

1 . T r yt o m a k et h e s es o u n de f f e c t s :l a s e rg u n ,w i n d( u s en o i s ew a v e f o r m ) ,s i r e n ,

e x p l o s i o n .T r yP O K E i n gi n t od i f f e r e n tb o x e si n t h eS I Dc h i p .

2 . W r i t ea p r o g r a mt o s h o wa f l y i n gb i r d ,a n dm a k et h e b i r dc h i r pa s i t g o e s .

1 3 6

Page 151: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 151/306

I n s t r u c t o rN o t e s2 0 . N a m e s ,C l o c k s ,a n dM o d e s

T h i sl e s s o nt r e a t st h er u l e sf o rn a m i n gv a r i a b l e s ,t h ej i f f yc l o c k ,a n dt h ee d i ta n d

R U Nm o d e s .

D e s c r i p t i v e v a r i a b l en a m e sh e l pc l a r i f yp r o g r a m s , b u tt h e yt a k em o r et y p i n ga n d

t h e r ea r et w oh i d d e ng o t c h a s .O n ei s t h a tB A S I Cr e c o r d so n l yt h ef i r s tt w ol e t t e r s

o f an a m e .T h i sm e a n st h a tt h o s eb e a u t i f u l d e s c r i p t i v en a m e sm a yn o tb e u n i q u e .

E v e ne x p e r i e n c e dp r o g r a m m e r so c c a s i o n a l l y g e tc a u g h th e r e ,a n dt h eb u gm a yb e

q u i t eh a r dt o d e t e c t .O n ec u r ei s t o u s e o n l y o n e -a n dt w o - c h a r a c t e rn a m e s .

T h eo t h e rg o t c h ai s t h a tr e s e r v e dw o r d sm a yn o tb e i n c l u d e di n t h en a m ea n yw h e r e — s t a r t ,m i d d l e ,o r e n d .T h er e s e r v e dw o r d sa r et h eB A S I Cs t a t e m e n t s ,c o m

m a n d s ,a n df u n c t i o n sa n da r el i s t e di n a n a p p e n d i xo f t h i sb o o k .I f a n a m e

c o n t a i n sa r e s e r v e dw o r d ,t h ec o m p u t e rp r i n t s :

? S Y 1 T T A XE R R O RI N X X

w h e r eX Xi s t h el i n en u m b e rc o n t a i n i n gt h ei l l e g a ln a m e .

T h ej i f f yc l o c ki s a r e g i s t e r i nt h ec o m p u t e rt h a tc o n t a i n s as i x - d i g i td e c i m a ln u m

b e r .T h en u m b e ri s i n c r e m e n t e de v e r y1 / 6 0s e c o n d .T h en u m b e ri s i n a B A S I Cv a r i a b l eb o xn a m e dT I .A r e a lc l o c k( h o u r s ,m i n u t e s ,a n ds e c o n d s )i s d e s c r i b e di n

a l a t e rl e s s o n .

T h es t u d e n th a sb e e ne n t e r i n gl i n e si n t h ee d i tm o d es i n c el e s s o n1 , a n dh a sb e e n

r u n n i n gp r o g r a m s .N o ww e e x p l a i n al i t t l ea b o u tt h ed i f f e r e n c ea n dp o i n to u th o w

I t h ee d i tm o d et r e a t sl i n e se n t e r e di n t ot h el i n e b u f f e r .T h el e s s o no n d e b u g g i n g

m a k e se x t e n s i v eu s eo f t h ee d i tm o d eo p t i o n s .

Q u e s t i o n s :

' 1 . N a m e sl o n g e rt h a nt w oc h a r a c t e r sm a yg i v ey o ut r o u b l e .W h y ?

2 . N a m e st h a th a v en u m b e r si n t h e mm a yb e g o o dn a m e so r w r o n gn a m e s .H o w

c a ny o ut e l l i ft h e ya r eg o o d ?

1 3 7

Page 152: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 152/306

3 . N a m e sc a n n o th a v ep u n c t u a t i o nm a r k si n t h e m ,e x c e p ti n o n ec a s e .W h a t

p u n c t u a t i o nm a r ki s a l l o w e d ,w h e r ed o y o up u ti t , a n d w h a td o e si t t e l ly o u ?

4 . L o n g n a m e sm a yh a v er e s e r v e dw o r d sa t t h ef r o n t ,i n s i d e ,o r a t t h eb a c k .

W h i c hw o r d sa r er e s e r v e d ?W h e r ei s t h e r e al i s to f r e s e r v e dw o r d s ?

5 . H o wd o y o ua s kt h ej i f f yc l o c k" w h a tt i m ei s i t ? "

6 . H o wd o e st h ej i f f yc l o c kd i f f e rf r o mo r d i n a r yc l o c k s ?

1 3 8

Page 153: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 153/306

L e s s o n2 0 . N a m e s ,C l o c k s ,a n d M o d e s

O l dR u l e sj 1 . A s t r i n gv a r i a b l en a m ee n d si n a d o l l a rs i g n .

H 2 . A n u m e r i c a lv a r i a b l en a m ed o e s n ' t .

M o r eR u l e s

3 . A v a r i a b l en a m ei s m a d eo f l e t t e r sa n dn u m b e r s .

4 . A v a r i a b l en a m em u s ts t a r tw i t ha l e t t e r .

5 . A v a r i a b l en a m ec a n n o th a v ea n yo t h e rs y m b o l so r p u n c t u a t i o nm a r k s .( E x c e p t

t h a ta s t r i n gv a r i a b l en a m em u s t h a v ea $ a t t h ee n d . )

6 . A v a r i a b l en a m ec a nh a v ea s m a n yl e t t e r sa n d n u m b e r sa s y o uw a n t .B u t. . .

7 . O n l yt h ef i r s tt w oc h a r a c t e r so f a v a r i a b l en a m em a t t e r . A l lt h er e s ta r ei g n o r e d

( e x c e p t t h e$ a t t h ee n do f as t r i n gv a r i a b l en a m e ) .

8 . R e s e r v e dw o r d sc a n n o t a p p e a ra n y w h e r ei n a v a r i a b l en a m e .T h e s ew o r d sa r e

t h eo n e st h a t a r es t a t e m e n t s ,c o m m a n d s ,a n df u n c t i o n s :S o m ee x a m p l e sa r e

R E M ,L I S T ,F O R ,T O ,L E T ,T A B ,I F ,a n d P R I N T .T h e r ei s a l i s to f t h e r e s e r v e

w o r d si n a n a p p e n d i xo f t h i sb o o k .

R i g h ta n d W r o n gN a m e s

— i S o m eC o r r e c tN a m e s : S o m e W r o n gN a m e s :

A 7 7 2 X

L E F T S I D E X #

X 3 A B $ $ N A M E

A P E L I S TN A M E $ C O L O R( h a sO Ri n i t ! )

C O W B O Y G I F T $( h a sI F i n i t ! )

X 3 T O M( h a sT Oi n i t ! )

1 3 9

Page 154: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 154/306

D o t h i s :P u tC O L O R ,G I F T ,a n dT O Mi n a l i n el i k e :

1 0 T O M= 1

a n dt h e ne n t e rR U N .

Y o uw i l l s e e :? S Y N T A XE R R O RI N 1 0

D i f f e r e n tN a m e sT h a t A r et h eS a m e

B r e a k i n gt h er u l e t h a t" O n l yt h ef i r s tt w oc h a r a c t e r sm a t t e r "c a nm a k ey o u r p r o

g r a mr u nv e r ys t r a n g e l y !

T h ec o m p u t e rc a n ' tt e l lt h en a m e si n t h e s ep a i r sa p a r t .

I t t h i n k st h a t H O S E i s t h es a m ea s H O Pa n d X I i s t h es a m ea s X 1 0

a n d N A M E 1 $i s t h es a m ea s N A M E S $

T r yt h i sp r o g r a m :

1 0 H O P $ =" B U N N Y "

2 0 H O S E $ =" S L I N K Y "3 0 P R I N T H O P $

a n ds e et h a tH O S E $a n dH O P $n a m et h es a m ev a r i a b l e ,w h i c hr e a l l yh a sj u s t

H O $w r i t t e no n t h ef r o n to f i t s b o x .

1 4 0

Page 155: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 155/306

E x e c u t i o na n dR u n n i n g

E x e c u t ea p r o g r a mm e a n st h es a m ea s r u na p r o g r a m .

I t i s l i k ea s o l d i e re x e c u t i n g t h ec o m m a n d" L e f tf a c e ! "

m m i

T h eE d i tM o d ea n dt h eR U N M o d e

T h ec o m p u t e ri s i n t h ee d i tm o d ew h e ny o uf i r s tt u r ni t o n .Y o uk n o wt h i sb e c a u s

y o us e e

R E A D Y ,

a n da f l a s h i n gc u r s o r .

I n t h ee d i tm o d e ,t h ec o m p u t e ri s a l m o s ta s l e e p ,w a i t i n gf o ry o ut o t y p es o m e

t h i n ga n dp r e s st h eR E T U R Nk e y .T h ef l a s h i n gc u r s o ri s l i k et h ec o m p u t e r

s n o r i n g .

1 4 1

Page 156: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 156/306

W h e ny o uc o m m a n d R U N ,t h ec o m p u t e re n t e r st h eR U Nm o d e .I t e x e c u t e st h e

p r o g r a mt h a ti s i n i t s m e m o r y .T h e ni t g o e sb a c kt o t h ee d i tm o d e .

T h eL i n eB u f f e r

W h e ny o ua r ei n t h ee d i tm o d ea n de n t e ra l i n e ,o n eo f t w ot h i n g sc a n h a p p e n

E n t e rt h i s :

9 9 G = G + 1 : P R I N TG

T h ec o m p u t e ra d d st h i sl i n et o t h ep r o g r a mi n m e m o r y .

E n t e rt h i s :

G = 1 7 * 1 6 : P R I N TG

T h ec o m p u t e rp r i n t st h ea n s w e rr i g h ta w a y .

1 4 2

Page 157: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 157/306

— i A n y t i m ey o ut y p e ,t h e c h a r a c t e r s a r e s t o r e di n a s p e c i a lb o xi n m e m o r yc a l l e da

l i n eb u f f e r .W h e ny o up r e s st h eR E T U R Nk e y ,t h ec o m p u t e rl o o k si n t h el i n e

— i b u f f e rb o x .

R u l e :I f i t s e e s al i n en u m b e ra t t h es t a r to f t h el i n e ,t h ec o m p u t e rm o v e st h el i n e

i n t ot h ep r o g r a mi n m e m o r y .

R u l e :I f i t d o e s n ' ts e e al i n en u m b e r ,i t e x e c u t e s t h el i n el i k ea p r o g r a m .T h el i n e

m a yh a v es e v e r a ls t a t e m e n t s s e p a r a t e db y c o l o n s( : ) .A f t e re x e c u t i o n ,i t f o r g e t s

t h el i n e !

T h eC o m p u t e r ' sJ i f f yC l o c k

T h ec o m p u t e rh a sa c l o c kt h a ts t a r t sw h e nt h ec o m p u t e ri s t u r n e do n a n dr u n sa l l

t h et i m e .( W e l l ,m o s to f t h et i m e .I t i s t u r n e do f fw h i l et h ec o m p u t e rl o a d s o r

s a v e sa p r o g r a m . )

T h ec l o c kr e a d si n j i f f i e so f 1 / 6 0s e c o n de a c h .T h er e a d i n gi s k e p ti n a s p e c i a l

v a r i a b l eb o xw i t ht h en a m eT I .

R u n :

1 0 P R I N TT I

2 0 G O T O1 0

T h ec l o c kc a nt e l ly o uh o wl o n gs o m e t h i n gt a k e st o d o b y s u b t r a c t i n g b e f o r a n d

a f t e rr e a d i n g so f t h e T Iv a r i a b l e .D i v i d et h ej i f f yc l o c kr e a d i n gb y 6 0 t o g e tt h e

t i m ei n s e c o n d s .

R u n :

1 0 T = T I

2 0 F O R1 = 1 T O 1 0 0 0 : N E X TI

3 0 S = T I - T

4 0 P R I N T " T H EL O O PT O O K " ; S ; " J I F F I E S "5 0 P R I N T M T H A TI S " ; S / 6 0 ; " S E C O N D S "

1 4 3

Page 158: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 158/306

A s s i g n m e n t2 0 :

1 . R e a dt h en a m i n gr u l e sn u m b e r e d1 t h r o u g h8 a t t h eb e g i n n i n go f t h i sl e s s o n .

F o r e a c hr u l em a k eu p t w on a m e s ,o n et h a ti s c o r r e c ta n do n et h a td i s o b e y st h e

r u l e .( R u l en u m b e r6 h a sn o w r o n gn a m e . )T r y e a c hn a m ei n a l i n el i k e

1 0 N A M E= 1 o r 1 0 N A M E S= " A "t o s e ei f i t i s a l e g a ln a m e .

2 . I sS U P E R C A L I F R A G I L I S T I C E X P I A L I D O C I O U Sa l e g a ln a m e ?W h yo r w h y

n o t ?I f n o t ,f i xi t .

3 . H o wc a ny o ut e l li f t h ec o m p u t e ri s i n t h ee d i tm o d e ?

4 . W h a td o e st h ec o m p u t e rd o i n t h eR U Nm o d e ?

5 . W h a tm o d ed o e st h ec o m p u t e re n t e rw h e nt h ep r o g r a mh a sf i n i s h e dr u n n i n g ?

6 . W r i t ea r e a c t i o nt i m et e s t e r .F l a s ha q u e s t i o nm a r k o nt h e s c r e e na t a r a n d o m

t i m e .T h eu s e rp r e s s e s t h eR E T U R Nk e ya s s o o na s t h e q u e s t i o nm a r ka p p e a r s

M e a s u r et h et i m ed e l a yb y c o u n t i n gh o wm u c ht h ej i f f yc l o c kh a s c h a n g e d .

P r i n to u tt h et i m ef o rt h e u s e rt o s e e .

1 4 4

Page 159: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 159/306

I n s t r u c t o rN o t e s2 1 . C o l o rG r a p h i c s

I T h i sl e s s o nd e m o n s t r a t e sm o s to f t h ec o l o r f e a t u r e s o ft h eC o m m o d o r e6 4 .

T h en e x tl e s s o nf i n i s h e sw i t ht h eP O K Es t a t e m e n tt h a tp u t s g r a p h i c sc h a r a c t e r s

o n t h e s c r e e ni n c o l o r .

T h el e s s o ns t a r t sw i t ha p r o c e d u r ef o rs y s t e m a t i c a l l ya d j u s t i n g t h ec o l o r c o n t r o

o n t h eT Vo r m o n i t o r .

S c r e e n b o r d e ra n db a c k g r o u n dc o l o r a r ec o n t r o l l e db y P O K E st o m e m o r ya d

d r e s s e s5 3 2 8 0a n d5 3 2 8 1 .

T h ec o l o r o f c h a r a c t e r s c u r r e n t l yb e i n gP R I N T e db y t h ec o m p u t e ri s s t o r e di n

m e m o r yb o x6 4 6 .

G r e a tc a r em u s tb e u s e di n P O K E i n gb e c a u s ea w r o n ga d d r e s sm a yp u t j u n ki n

s o m ev i t a lp a r t o fm e m o r y , m a k i n gt h es y s t e mc r a s h .O f c o u r s e ,t h i sd o e s n ' th u r t

t h ec o m p u t e rp h y s i c a l l y ;i t j u s tm a k e si t n e c e s s a r yt o d o a c o l ds t a r t( t h a ti s , t u r n

t h ec o m p u t e ro f f ,t h e nb a c ko n ) .A s a r e s u l t ,t h ep r o g r a mi n m e m o r yi s l o s t .

I f y o ua r ew r i t i n g ap r o g r a mt h a th a sP O K E s ,i t i s w i s et o s a v ei t t o t a p eo r d i s k

b e f o r er u n n i n gi t . T h e ni f y o uh a v ea c o m p u t e rc r a s h ,y o uc a nc o l ds t a r ta n dl o a d

t h ep r o g r a ma n db e e x a c t l ya t t h ep o i n t b e f o r e t h ec r a s h .

Q u e s t i o n s :

1 . H o wm a n yd i f f e r e n tc o l o r sc a nt h eb o r d e rh a v e ?

2 . H o wm a n yc o l o r sf o rt h e s c r e e nb a c k g r o u n d ?

3 . H o wm a n yc o l o r sf o rt h ep r i n t i n g ?

4 . W h a td o e sm e m o r yb o xn u m b e r6 4 6c o n t r o l ?

1 4 5

Page 160: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 160/306

5 .W h a tb o xd o y o uP O K Et oc h a n g et h es c r e e nb a c k g r o u n dc o l o r ?

6 . W h a tb o xd oy o uP O K Et o c h a n g et h es c r e e nb o r d e rc o l o r ?

7 . W h a th a p p e n si f y o up r e s s t h eC o m m o d o r ek e ya n da c o l o rk e y ?

8 . W h a td a n g e ri s t h e r ei n u s i n gP O K E ?

1 4 6

Page 161: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 161/306

L e s s o n2 1 . C o l o rG r a p h i c s

A d j u s t Y o u rC o l o rT Vo r M o n i t o rP u ta l l t h ec o l o r so n t h e s c r e e nl i k et h i s :

F i r s tp r e s sC T R La n dR V SO N . ( N o wa s p a c ew i l lb e a c o l o r e ds p o t . )

P r e s sC T R La n dt h eR E Dk e y .T h e nh o l dd o w nt h es p a c e b a rt o m a k ea r e ds t r i p e

o n t h es c r e e n .

R e p e a tw i t ht h er e s to f t h ec o l o rk e y s .P r e s sC T R La n dR V SO F F .

N o wy o u h a v es i xc o l o r e ds t r i p e so n t h es c r e e n .A d j u s tt h ec o l o r c o n t r o l so n t h eT Vo r m o n i t o ru n t i le a c hc o l o rl o o k sc o r r e c t .

C o l o rS c r e e n

R e m e m b e rt h a tt h eb o xn u m b e r e d5 3 2 8 1h o l d sa n u m b e rf r o m0 t o 1 5 w h i c h

p i c k sa n u m b e rf o rt h es c r e e nb a c k g r o u n dc o l o r .

T h e r ei s a n o t h e rm e m o r yb o x w h i c ht e l l st h ec o m p u t e rw h a tc o l o r st o s h o wo n

t h eb o r d e ro f t h es c r e e n .

T h i sn u m b e ri s 5 3 2 8 0 .

R u n :

1 0 R E MC O M B I N A T I O N S2 0 S B O X = 5 3 2 8 1 : R E M S C R E E NB O X

2 1 B B O X = 5 3 2 8 0 : R E M B O R D E RB O X2 5 P R I N T " { C L R } { 3 D O W N } "3 0 I N P U T" W H A TC O L O R S C R E E N< 0 T O 1 5 > " ; S C3 7 P O K ES B O X , S C

3 8 P R I N T " { C L R } { 3 D O W N } "

4 0 I N P U T" W H A TC O L O R B O R D E R< 0 T O 1 5 > " ; B C5 0 P O K EB B O X , B C9 0 G O T O2 5

1 4 7

Page 162: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 162/306

C o l o iN u m b e r s

0 B l a c k

1 W h i t e

2 R e d

3 C y a n( B l u e - G r e e n )

4 P u r p l e

5 G r e e n6 B l u e

7 Y e l l o w

8 O r a n g e

9 B r o w n

1 0 L i g h tR e d

1 1 G r a y1

1 2 G r a y2

1 3 L i g h tG r e e n1 4 L i g h tB l u e

1 5 G r a y3

T h es c r e e nc a nh a v e a n yo f t h e s e1 6 c o l o r s .

( N o t et h a tt h e s en u m b e r sa r eo n el e s st h a nt h en u m b e r ss h o w no n t h ec o l o r

k e y s . )

Y o uc a nc h a n g et h ep r i n t i n gc o l o r ,e v e nw h i l et h ea b o v e p r o g r a mi s r u n n i n g ,b y

p r e s s i n g t h eC T R Lk e ya n da c o l o rk e y .T r yi t !

1 4 8

Page 163: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 163/306

T h eC h a r a c t e rC o l o rB o x

T h e r ei s a b o xt h a tt e l l st h ec o m p u t e rw h a tc o l o ry o uh a v ec h o s e nf o rp r i n t i n g

c h a r a c t e r s .I t s b o xn u m b e ri s 6 4 6 .

Y o uc a nc h a n g et h ec o l o ro f t h el e t t e r st h a ta r ep r i n t e dw h i l et h ep r o g r a mi s r u n

n i n gb y P O K E i n ga n u m b e rf r o m0 t h r o u g h1 5 i n t h a tb o x .

A d dt h e s el i n e s t ot h ea b o v ep r o g r a m :

6 0 I N P U T" W H A TC O L O RL E T T E R S < 0T O 1 5 > M ; C L6 4 P O K E 6 4 6 , C L

R u ni t .

C a r e f u l !I f y o uc h o o s et h es a m ec o l o rf o rt h es c r e e na n dl e t t e r s ,y o uc a n n o ts e et h e

p r i n t i n g .D o n ' tg i v e u p .J u s tp r e s sC T R La n da n o t h e rc o l o rk e y ,a n dt h ep r i n t i n g

w i l la p p e a ra g a i ni n s o m ec o l o r o ra n o t h e r !

1 4 9

Page 164: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 164/306

J u m p i n gN a m e

1 0 R E M J U M P I N G N A M E

1 5 P R I N T " { C L R } { 3 D O W N } "1 6 P O K E5 3 2 8 1 , 0 : R E MB L A C K S C R E E N2 0 C B = 6 4 6 : R E MC H A R .C O L O R B O X

3 0 I N P U T M N A M E M ; N $3 2 I N P U T" H O W M A N Y L E T T E R SI N I T " ; N3 9 P R I N T " { C L R } "4 0 F O R1 = 1 T O R N D ( 8 ) * 2 4 : R E M M O V E D O W N4 5 P R I N T" { D O W N } 1 1 ;: N E X TI5 0 F O R1 = 1 T O R N D ( 8 ) * 3 9 - N : R E MM O V E A C R O S S5 5 P R I N T" { R I G H T } " ; : N E X TI5 7 N C = I N T ( R N D ( 8 ) * 8 ) : R E M R A N D O M C O L O R5 8 I F N C = 0T H E N5 7 : R E M N O TB L A C K6 0 P O K E C B , N C : R E MP U TI N B O X

7 0 P R I N TN $ ; : R E M P R I N T N A M E8 0 F O RT = l T O 1 0 0 0 : N E X TT

9 0 G O T O3 9

W h a th a p p e n s :

L i n e3 9 c l e a r st h e s c r e e na n dh o m e st h ec u r s o r .

L i n e s4 0 a n d4 5 r u nt h e c u r s o rd o w nt h es c r e e na r a n d o m n u m b e ro f l i n e s .

L i n e s5 0 a n d5 5 r u nt h ec u r s o ra c r o s st h e s c r e e na r a n d o m n u m b e ro f s p a c e s .

L i n e5 7 p i c k sa c o l o rf o rp r i n t i n gl e t t e r s .

L i n e5 8 p i c k sa n o t h e rc o l o ri f t h ef i r s tc h o i c ew a sb l a c k .W ed o n o tw a n tb l a c kl e t

t e r so n a b l a c ks c r e e n .

L i n e6 0 p u t s t h ec o l o rc h o i c ei n b o x6 4 6 .T h i st e l l st h ec o m p u t e rw h a tc o l o rt o

p r i n ty o u rn a m e .

L i n e 7 0p r i n t sy o u rn a m ei n t h en e wc o l o r .

L i n e9 0 s a y s ," G od o i t o v e ra g a i n . "

1 5 0

Page 165: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 165/306

Page 166: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 166/306

Page 167: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 167/306

L e s s o n2 2 . P O K E i n gG r a p h i c s

M a k ec o l o r e ds t r i p e sa n da d j u s tt h eT Vo r m o n i t o rc o l o rk n o b s .

T h eS c r e e nI s a M a po f M e m o r yB o x e s

I m a g i n ea l i t t l et o w nw i t h 2 5s t r e e t s .E a c hs t r e e th a s4 0 h o u s e so n i t .

E a c hh o u s ei s a b o xi n m e m o r ya n dc a nh o l do n ec h a r a c t e r .

T h es t r e e t sa r et h e2 5 l i n e s ,c o u n t i n gd o w nt h es c r e e n .T h e r ea r e4 0 b o x e s c o u n

i n ga c r o s s al i n e .

T h ec o m p u t e rf l i e so v e rt h et o w nl i k ea n a i r p l a n e .I t l o o k sd o w no n t h eb o x e sa n d

d r a w sa m a p , w h i c hi t s h o w so n t h es c r e e n .T h em a ps h o w s w h i c hc h a r a c t e ri s i n

e a c hh o u s e .

R e m e m b e r ,m o s to f t h em a pi s b l a n ks c r e e n ,b u tb l a n k ,o r s p a c e ,i s a c h a r a c t e r ,

t o o !

1 5 3

Page 168: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 168/306

M o v i n ga C h a r a c t e rI n t oa H o u s e

E n t e rt h i s :

P O K E 1 0 2 4 # 8 3 : P O K E 5 5 2 9 6 , 2

Y o uw i l ls e ea r e dh e a r ti n t h eh o m ep o s i t i o no n t h es c r e e n( u p p e rl e f tc o r n e r ) .

W h a th a p p e n e d ?W eP O K E dt h e h e a r t( c h a r a c t e rn u m b e r8 3 )i n t ot h em e m o r y

b o xn u m b e r1 0 2 4t h a ts h o w si n t h eh o m ep o s i t i o no n t h es c r e e n .

P O K Em e a n sy o up u tt h en u m b e rd i r e c t l yi n t ot h em e m o r yb o x .

T h e nw e P O K E da c o l o r ,r e d ,i n t oa n o t h e rm e m o r yb o x( 5 5 2 9 6 )t h a tg i v e st h e

c o l o r o f t h e c h a r a c t e ri n t h eh o m ep o s i t i o n .

T r yt h i s :C h a n g et h en u m b e r8 3 t o a n yo t h e rn u m b e rf r o m6 4 t h r o u g h 1 2 7a n d

r u ni t a g a i n .

C h a n g et o a n o t h e rc o l o rn u m b e rf r o m0 t o 1 5 .

1 5 4

Page 169: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 169/306

A d d r e s s e so n t h eS c r e e n

E a c hh o u s eh a sa n a d d r e s s .

T h eb o xw e c a l lt h eh o m eo f t h e c u r s o rh a st h el o w e s ta d d r e s s .I t i s 1 0 2 4 .T h e

l a b e lo n t h ef r o n t o ft h eb o xi s 1 0 2 4 .

T h en e x tb o xt o t h er i g h ti s 1 0 2 5 ,a n dt h en u m b e r si n c r e a s e a c r o s st h e s c r e e na n d

d o w n .

T h eh i g h e s tn u m b e rb e l o n g si n t h el o w e rr i g h tc o r n e r ,a d d r e s s2 0 2 3 .

T h eW h o l eT o w nE n t e r :

1 0 R E ME V E R YT H I R DH O U S E

1 2 P O K E5 3 2 8 1 , 0 : R E M B L A C K S C R E E N1 5 P R I N T" { C L R } { W H T } " : R E M C L E A R S C R E E N2 0 D $ = "2 2 F O R1 = 1 T O 2 5 : P R I N TD $ : N E X TI

2 5 F O R1 = 1 0 2 4T O 2 0 2 3S T E P3 : R E M W A L K A L O N GS C R E E N3 0 C H = I N T ( R N D ( 8 ) * 6 4 ) + 6 4 : R E M R A N D O M C H A R A C T E

6 0 P O K EI , C H : R E MP O K EC H A R A C T E R7 0 F O R T = l T O1 0 0 : N E X T T : R E M P A U S E

8 0 N E X TI : R E ME N D O FL O O P

S a v eb e f o r er u n n i n gt h i sp r o g r a m .

T h i st i m ea l l t h ec h a r a c t e r sw e r ew h i t e b e c a u s et h e{ W H T }c h a r a c t e rw a sp r i n t e d

i n l i n e1 5 a n ds p a c e si n l i n e 2 2 .

I f y o u w a n ta n o t h e rc o l o r ,y o uh a v et o P O K Ea n u m b e ri n t ot h ec o r r e c tc o l o rm a p

b o x .

C h a n g et h ea b o v ep r o g r a m .

E n t e r :

2 02 2

6 5 P O K EI - 1 0 2 4 + 5 5 2 9 6 , R N D ( 8 ) * 7 + 1 : R E MC O L O RB O X E S

1 5 5

Page 170: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 170/306

T o g e tj u s tl e t t e r sa n dp u n c t u a t i o no n t h es c r e e n ,c h a n g e :

3 0 C H = I N T ( R N D ( 8 ) * 6 4 )

C o o r d i n a t eN u m b e r s

N u m b e r sl i k e1 0 2 4a n d5 5 2 9 6a r eh a r dt o r e m e m b e r .

W ec a nn u m b e rt h es t r e e t sa n dh o u s e sl i k et h o s ei n r e a lt o w n s :

S t r e e t0 a t t h e t o po f t h es c r e e n

S t r e e t1 n e x tb e l o wi t

S t r e e t2 4 a t t h eb o t t o mo f t h e s c r e e n

1 5 6

Page 171: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 171/306

W en u m b e rt h eh o u s e so n e a c hs t r e e t :

H o u s e0 o n t h el e f to f e a c hs t r e e t

H o u s e1 n e x tt o i t

H o u s e3 9 a t t h er i g h te n do f t h es t r e e t

T h e nw e u s ea l i t t l ef o r m u l at o g e tt h ea d d r e s so f e a c hh o u s ea n di t s c o l o rb o x .

S c r e e na d d r e s s= 1 0 2 4+ 4 0 * s t r e e tn u m b e r+ h o u s e n u m b e r .

C o l o ra d d r e s s= 5 5 2 9 6+ 4 0 * s t r e e tn u m b e r+ h o u s e n u m b e r .

( S e el i n e5 0 b e l o w . )

E n t e r :

1 0 R E MT O W N M A P

1 5 S C = 1 0 2 4 : R E M S C R E E N C O R N E R1 6 C C = 5 5 2 9 6 : R E MC O L O RC O R N E R

1 7 B $ = "2 0 P R I N T" { C L R } "3 0 I N P U T " { H O M E } { D O W N } W H I C H S T R E E T " ; S3 5 P R I N T" { H O M E } { D O W N }" ; B $ ; : R E M E R A S EW R I T I N G4 0 I N P U T " { H O M E } { D O W N } W H I C HH O U S E " ; H4 3 P R I N T" { H O M E } { D O W N }" ; B $ ;4 5 C = 5 : R E M C O L O R N U M B E R5

5 0 A D = 4 0 * S+ H : R E M A D D R E S S5 5 P O K EA D + S C , 1 0 2 : R E MP O K ES C R E E NC E L L5 6 P O K EA D + C C , C : R E MP O K E C O L O R C E L L

5 7 F O RT = l T O 2 0 0 0 : N E X TT

8 0 G O T O3 0

S a v et o t a p eo r d i s k ,t h e nr u n .

( O m i tt h eR E Ms t a t e m e n t sw h e ny o ut y p et h i si n . )

1 5 7

Page 172: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 172/306

A s s i g n m e n t2 2 :

1 . W r i t ea p r o g r a mt h a td r a w sa s q u a r e .L e t t h e u s e rc h o o s ew h a tc o l o ri t w i l lb e .

S a v ei t t o t a p eo r d i s k .

2 . A d dt o t h ep r o g r a ms o t h a ti t h a so n et o s i xs p o t so n i t l i k e d i c e .

3 . " S i n b a d ' sC a r p e t "p r o g r a mi s s h o w nb e l o w .Y o ui m p r o v ei t . C h a n g i n gt h ef o r

m u l ai n l i n e2 1 5g i v e sd i f f e r e n t c a r p e t s .A d da " s u p e r "o u t s i d el o o pt h a td r a w s

o n ec a r p e ta f t e ra n o t h e r ,e a c hc h a n g e da l i t t l ei n c o l o r d e s i g n .D o t h i sb y

p u t t i n gv a r i a b l e si n l i n e2 1 5t h a ta r ec h a n g e di n t h es u p e rl o o p .

1 0 R E MS I N B A D ' SC A R P E T

2 0 P R I N T" { C L R } "

1 0 0 C C = 5 5 2 9 61 0 5 C = C C + 5 0 0

1 1 0 S C = 1 0 2 51 1 5 C H = 9 6 + 1 2 81 5 0 F O RI = S C T OS C + 1 0 0 0

1 5 5 P O K EI , C H

1 6 0 N E X TI2 1 0 F O R1 = 1 T O 1 1 : F O RJ = 0 T O 1 8

2 1 2 R = ( I + J ) * 7 / 2 22 1 5 K = K + ( R + 3 ) / ( R + 5 )2 1 6 I F K > 1 5T H E N K = 0

2 2 0 P O K EC + I * 4 0 + J , K2 2 2 P O K E C - I * 4 0 + J , K2 2 4 P O K EC + I * 4 0 - J , K

2 2 6 P O K EC - I * 4 0 - J , K2 5 0 N E X TJ , I

1 5 8

Page 173: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 173/306

I n s t r u c t o rN o t e s2 3 . S e c r e tW r i t i n ga n dt h eG E TS t a t e m e n t

1 T h i sl e s s o nc o n c e r n st h eG E Ts t a t e m e n t .

^ G E Ti s a m e t h o do f r e q u e s t i n ga s i n g l ec h a r a c t e rf r o mt h ek e y b o a r d .

T h e r ei s n o s c r e e nd i s p l a ya t a l l .N o p r o m p to r c u r s o ri s d i s p l a y e d ,a n dt h ek e y

s t r o k ei s n o te c h o e dt o t h es c r e e n .

T h eu t i l i t yo f t h eG E Ts t a t e m e n tl i e sj u s ti n t h i sf a c t .F o r e x a m p l e ,a r e q u e s t e d

w o r dm a yb e r e c e i v e dw i t ha s e r i e so f G E T sw i t h o u td i s p l a y i n gi t t o b y s t a n d e r s

A n o t h e ra d v a n t a g eo f G E Ti s t h a tn o R E T U R Nk e yp r e s s i n gi s r e q u i r e d .T h i s

m a k e sG E Tu s e f u li n u s e r - f r i e n d l yp r o g r a m m i n gf o rm e n u sa n di n g a m e sf o r

m o v e s .

W h e nt h eG E Ts t a t e m e n ti s e x e c u t e d ,t h ec o m p u t e rl o o k si n t h el i n eb u f f e rf o ra

c h a r a c t e r .I f i t f i n d so n e ,i t r e t u r n si t t o t h ev a r i a b l e .( I ft h ev a r i a b l ei s n u m e r i c a

a n dt h ek e y s t r o k ew a sn o t ,a 7 S Y N T A XE R R O Ri s p r i n t e d . )

I f t h el i n eb u f f e ri s e m p t y ,i t r e t u r n sz e r ot o a n u m e r i c a lv a r i a b l eo r " "( t h e

e m p t ys t r i n g )t o a s t r i n g v a r i a b l e .

F o rm o s ts i t u a t i o n sw h e r e y o u w a n tt i m et o t h i n k b e f o r e p r e s s i n ga k e y ,y o u m u s

p u tG E Ti n a l o o p ,a n dk e e pl o o k i n ga t t h e b u f f e ru n t i la n o n e m p t ys t r i n gi s

p r e s e n t .

T h el i n eb u f f e rh a sa q u e u eu p t o t e nc h a r a c t e r s l o n g .S o f o rs o m ec a s e s ,y o uc a n

t y p ea h e a du p t o t e nc h a r a c t e r s .

1 5 9

Page 174: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 174/306

=

Q u e s t i o n s :

1 . C o m p a r eI N P U Ta n dG E T .F o re a c hq u e s t i o nr e p l yG E To r I N P U T .

a . G e t sw h o l ew o r d sa n ds e n t e n c e sa t o n c e .

b . S h o w sa c u r s o r .

c . G e t so n ec h a r a c t e ra t a t i m e .

d . S h o w st h e k e y s t r o k e so n t h es c r e e n .

e . D o e sn o tn e e da R E T U R Nk e y p r e s s .

2 . W h yd o y o uu s u a l l yn e e dt o p u tG E Ti n a s h o r tl o o p ?

1 6 0

Page 175: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 175/306

L e s s o n2 3 . S e c r e tW r i t i n ga n dt h e G E TS t a t e m e n t

T h e I N P U TS t a t e m e n t

T h e r ea r et w ow a y st o u s eI N P U T .

W i t h o u ta m e s s a g e :

1 0 I N P U TA $1 0 I N P U TN

1 0 I N P U TN A M E $ , A G E , D A Y , M O N T H $ , Y E A R

W i t ha m e s s a g e :

1 0 I N P U T" N A M E , A G E " ; N A M E $ , A G E1 0 I N P U T" H O WA R EY O U " ; F E E L $

E i t h e rw a y ,t h ec o m p u t e rw a i t sf o ry o ut o t y p ei n a w o r d ,s e n t e n c e , o rn u m b e r ,

a n dt h e nf o ry o ut o p r e s s t h eR E T U R Nk e y .

T h eG E TS t a t e m e n ta n dS e c r e tW r i t i n g

T h eG E Ts t a t e m e n ti s d i f f e r e n tf r o mI N P U T .I t g e t s a s i n g l ec h a r a c t e rf r o mt h e

k e y b o a r d .E x a m p l e :

1 0 g e t a $

1 6 1

Page 176: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 176/306

1 ~

W h e nt h ep r o g r a mr e a c h e sG E Ti n l i n e 1 0 ,t h ec o m p u t e rl o o k st o s e ei f a n yk e y

h a sb e e np r e s s e d .I f s o ,i t r e a d s t h ek e ya n dp u t st h e c h a r a c t e ri n t ot h em e m o r y

b o xA $ .

N o t h i n gs h o w s o nt h es c r e e n :

N o m e s s a g ew i l ls h o wo n t h es c r e e n .

N oq u e s t i o nm a r kw i l ls h o w .

N o c u r s o rw i l ls h o w .

W h a ty o ut y p ew i l ln o ts h o w .

T h e C o m p u t e rI s I m p a t i e n t

T h ec o m p u t e rd o e sn o tw a i t .I f y o uh a v en o t p r e s s e da k e yb y t h et i m et h ec o m

p u t e r r e a c h e sG E T ,i t f i l l st h ev a r i a b l eA $w i t h" " ( t h ee m p t ys t r i n g )a n dg o e so n !

T h i si s a b a df e a t u r ei f y o uw a n tt o t h i n k b e f o r ey o up r e s sa n yk e y .T h ec o m p u t e

d o e sn o tw a i tf o ry o ut o t h i n k .

M a k i n gt h eC o m p u t e rW a i t

Y o uc a na s kt h ec o m p u t e rt o k e e pl o o k i n ga t t h ek e y b o a r du n t i ly o up r e s s ak e y .

E x a m p l e :*

3 5 G E T L $ : I F L $ = " "T H E NG O T O3 5

T h i si s a g o o dw a yt o u s eG E Ti n g u e s s i n gg a m e s .Y o uc a ne n t e rt h ew o r do r

n u m b e rt o b e g u e s s e d w i t h o u tt h eo t h e r p l a y e rb e i n ga b l et o s e ei t .

R u nt h i sp r o g r a m :

1 0 R E M G E T

2 0 P R I N T M { C L R } { 3 D O W N } "

3 0 P R I N T" P R E S SA N YK E Y "4 0 P R I N T" { 2 D O W N H B L K }W A I T I N G .• . "

4 5 G E TK $ : I FK $ = I M IT H E N4 5

4 7 F O RT = l T O 5 0 0 : N E X TT5 0 P R I N T M { D O W N } { W H T } T H EK E YY O UP R E S S E DW A S" ; K $5 5 F O RT = l T O1 0 0 0 : N E X TT

6 0 G O T O2 0

1 6 2

Page 177: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 177/306

M a k i n gW o r d sO u to f L e t t e r s

T h eG E Ts t a t e m e n tg e t so n el e t t e ra t a t i m e .T o m a k ew o r d s ,g l u et h es t r i n g s .

1 0 R E M# # B A C K W A R D S# #

1 5 P O K E5 3 2 8 1 , 0 : R E M B L A C KS C R E E N2 0 P R I N T M { C L R } { 3D O W N } 1 13 0 P R I N T" T Y P EA W O R D{ D O W N } 1 13 1 P R I N T" E N DI T W I T HA P E R I O D "3 5 W $ = M " : R E M W O R DS T R I N GI S E M P T Y4 0 G E T L $ : I FL $ = " "T H E N4 0

5 0 I FL $ = " . " T H E N 8 0 : R E M T E S TF O RE N D6 0 W $ = L $ + W $ : R E MA D DL E T T E RT O F R O N T O FW O R D6 5 G O T O 4 0 : R E MT O G E TA N O T H E R L E T T E R

8 0 R E MW O R DI S F I N I S H E D8 2 P R I N T " { C L R } { 4 D O W N } { G R N }H E R EI T I S B A C K W A R D S "8 5 P R I N T " { D O W N } { P U R } " ; W $ ; " { W H T } "

H o wd o e st h ec o m p u t e rk n o w w h e nt h ew o r di s a l l t y p e di n ?I t s e e sa p e r i o da t

t h ee n do f t h ew o r d .L i n e5 0 t e s t sf o rt h ep e r i o da n de n d st h ew o r dw h e ni t f i n d s

t h ep e r i o d .

T h eG E TS t a t e m e n tf o rN u m b e r s

T h eG E Ts t a t e m e n tc a nb e u s e dt o i n p u tn u m b e r s .I f n o k e y h a sb e e np r e s s e d ,t h e

n u m b e rw i l lb e z e r o .T r yt h i s :

E n t e ra n dr u n :

1 0 G E T N : I F N = 0T H E N1 01 5 P R I N TN

2 0 G O T O1 0

P r e s sn u m b e rk e y s .N o wp r e s sa l e t t e rk e y .Y o us e e

? S Y F T A X E R R O R

w h e ny o ut r y t oG E Ta l e t t e rc h a r a c t e ri n a n u m e r i c a lv a r i a b l e .

1 6 3

Page 178: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 178/306

A s s i g n m e n t2 3 :

1 . W r i t ea p r o g r a mt h a th a sa m e n uf o rt h eu s e rt o c h o o s ef r o m .T h eu s e rm a k e sa

c h o i c eb y t y p i n ga s i n g l el e t t e r .U s eG E Tt o g e tt h el e t t e r .E x a m p l e :

P R I N T " W H I C HC O L O R ? < R = R E D , B = B L U E , G = G R E E N > "

T h ep r o g r a mc h a n g e st h eb o r d e rc o l o rt o t h eu s e r ' sc h o i c e .

2 . W r i t ea s e n t e n c e - m a k i n gg a m e .E a c hs e n t e n c eh a sa n o u ns u b j e c t ,a v e r b ,a n d

a n o b j e c t .T h ef i r s tp l a y e r t y p e sa n o u n( l i k e" T h ed o n k e y " ) .T h es e c o n dp l a y e r

t y p e sa v e r b( l i k e" s i n g s " ) .T h et h i r dp l a y e rt y p e sa n o t h e rn o u n( l i k e" t h e

t o o t h p i c k " ) .U s eG E Ts o n o p l a y e rc a ns e et h eo t h e rp l a y e r s 'w o r d s .Y o um a y

e x p a n dt h eg a m eb y h a v i n ga d j e c t i v e sb e f o r e t h en o u n s .

1 6 4

Page 179: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 179/306

I n s t r u c t o rN o t e s2 4 . P r e t t yP r o g r a m s ,G O S U B ,R E T U R N ,E N D

T h i sl e s s o n c o v e r ss u b r o u t i n e s .T h eE N Ds t a t e m e n ti s a l s ot r e a t e dh e r eb e c a u s e

t h ep r o g r a mw i l lu s u a l l yh a v ei t s s u b r o u t i n e sa t h i g hl i n en u m b e r s a n dt h u sm u s t

E N Di n t h em i d d l el i n en u m b e r s .

L i k eG O T O ,G O S U Bc a u s e sa j u m pt o a n o t h e rl i n en u m b e r .T h eo n l yd i f f e r e n c ei s

t h a ti n G O S U B ,c o n t r o lr e t u r n st o t h ec a l l i n g l i n ea f t e rt h es u b r o u t i n eh a sc o m

p l e t e de x e c u t i n g .T h i si s a c c o m p l i s h e db y s t o r i n gt h eG O S U Bl i n en u m b e ro n a

s t a c k .W h e nt h ec o m p u t e re n c o u n t e r sa R E T U R Ns t a t e m e n t ,i t p o p st h el i n en u m

b e ro f ft h e s t a c ka n dr e t u r n st o t h es t a t e m e n tf o l l o w i n gt h eG O S U B .

S u b r o u t i n e sa r e u s e f u ln o to n l yi n l o n gp r o g r a m sb u ti n s h o r to n e sw h e r e

" c h u n k i n g "t h et a s k i n t o s e c t i o n sl e a d st o c l a r i t y .

O n eo f t h eh a r d e s th a b i t st o f o r mi n s o m es t u d e n t s( a n de v e ns o m ep r o f e s s i o n a

i s t o i m p o s es t r u c t u r eo n t h ep r o g r a m .S t r u c t u r i n gh a sg o n eb y m a n yn a m e s ,s u c h

a s s t r u c t u r e dp r o g r a m m i n ga n dt o p d o w np r o g r a m m i n g ,a n du s e s v a r i o u s t e c h n

t o d i s c i p l i n et h ep r o g r a m m e r .

C a l lt h es t u d e n t ' sa t t e n t i o nt o w a y st h a t s t r u c t u r i n gc a nb e d o n e ,a n ds t r e s st h e

a d v a n t a g e si n c l a r i t yo f t h o u g h ta n de a s eo f p r o g r a m m i n gt h a tr e s u l t .I n t h i s

b o o k ,w r i t i n gg o o dR E Ms t a t e m e n t sa n du s i n gm o d u l a rc o n s t r u c t i o ni n t h ep r o

g r a ma r et h em a i nt e c h n i q u e so f f e r e d .

Q u e s t i o n s :

1 . W h a th a p p e n sw h e nt h es t a t e m e n tE N Di s e x e c u t e d ?

2 . H o wi s G O S U Bd i f f e r e n tf r o mG O T O ?

3 . W h a th a p p e n sw h e nR E T U R Ni s e x e c u t e d ?

4 . I f R E T U R Ni s e x e c u t e db e f o r eG O S U B ,w h a th a p p e n s ?

1 6 5

Page 180: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 180/306

5 . W h a td o e s" c a l lt h es u b r o u t i n e "m e a n ?

6 . H o wm a n yE N Ds t a t e m e n t sa r ey o ua l l o w e dt o p u ti n o n ep r o g r a m ?

7 . W h yd o y o u w a n tt o h a v es u b r o u t i n e si n y o u r p r o g r a m s ?

1 6 6

Page 181: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 181/306

Page 182: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 182/306

T h eE N Ds t a t e m e n ti n l i n e1 9 0t e l l st h ec o m p u t e rt h a tt h ep r o g r a mi s o v e r .T h e

c o m p u t e rg o e sb a c kt o t h ee d i tm o d e .

L i n e1 2 0a n dl i n e1 4 0c a l lt h es u b r o u t i n e .T h i sm e a n st h ec o m p u t e rg o e sa n dp e r

f o r m st h es t a t e m e n t si n t h e s u b r o u t i n e ,t h e nc o m e sb a c k .

T h eG O S U B2 0 0s t a t e m e n ti s l i k ea G O T O2 0 0s t a t e m e n te x c e p tt h a tt h ec o m

p u t e rr e m e m b e r s w h e r ei t c a m ef r o ms o t h a ti t c a ng o b a c kt h e r e a g a i n .

T h eR E T U R Ns t a t e m e n tt e l l st h ec o m p u t e rt o g o b a c kt o t h es t a t e m e n ta f t e rt h e

G O S U B .

A s s i g n m e n t2 4 A :1 . T h ed e l a yl o o pi s w r i t t e nt h r e et i m e si n t h ea b o v ep r o g r a m .A d da n o t h e rs u b

r o u t i n ew i t ha d e l a y l o o pi n i t , a n dG O S U Be v e r y t i m ey o un e e da d e l a y .

W h a tG o o dI s a S u b r o u t i n e ?

I n a s h o r tp r o g r a m ,n o tm u c hg o o d .

I n a l o n gp r o g r a m ,i t d o e st w ot h i n g s :

1 . I t s a v e sy o uw o r k a n ds a v e ss p a c ei n

m e m o r y .Y o ud o n o th a v et o r e p e a t

t h es a m ep r o g r a ml i n e s i n d i f f e r e n t

p a r t s o ft h ep r o g r a m .

2 . I t m a k e st h ep r o g r a me a s i e r t o

u n d e r s t a n da n df a s t e rt o w r i t e

a n dd e b u g .

1 6 8

Page 183: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 183/306

T h eE N DS t a t e m e n t

T h ep r o g r a mm a yh a v ez e r o ,o n e ,o r m a n yE N Ds t a t e m e n t s .

R u l e :T h eE N Ds t a t e m e n tt e l l st h ec o m p u t e rt o s t o pr u n n i n ga n dg o b a c kt o t h e

e d i tm o d e .

T h a ti s r e a l l ya l li t d o e s .Y o uc a n p u ta n E N Ds t a t e m e n ta n y w h e r ei n t h ep r o

g r a m — f o re x a m p l e ,a f t e rT H E Ni n a n I F s t a t e m e n t .

M o v i n gP i c t u r e s

1 0 R E M J U M P I N GJ

1 5 P O K E5 3 2 8 1 , 0 : P R I N T" { R E D } { C L R } "

2 0 X = 1 0 : Y = 1 0 : D = 12 5 F O RJ = l T O 6 : F 0 R1 = 1 T O 6

2 9 A $ = " { R V S }{ O F F } "3 0 G O S U B1 0 0 : R E M D R A W

3 4 A $ = M" : R E M S P A C E3 5 G O S U B 1 0 0 : R E M E R A S E

4 0 Y = Y - D : R E M M O V E

5 0 N E X TI

5 5 D = - D : R E M R E V E R S ED I R E C T I O N6 0 N E X TJ

8 0 P R I N T " { W H T } "9 0 E N D1 0 0 R E M

1 0 1 R E M D R A WT H EJ1 0 2 R E M

1 0 4 P R I N T " { H O M E } "1 0 5 F O RL = l T OY : P R I N T : N E X T1 0 9 F O RK = l T O 5

1 1 0 P R I N T T A B ( X ) ; "" ; A $1 1 1 N E X TK

1 2 0 P R I N TT A B ( X ) ; A $ ; "" ; A $1 3 0 P R I N TT A B ( X ) ; "" ; A $ ; A $1 9 0 R E T U R N

S a v et o t a p eo r d i s k .

T h ep i c t u r ei s t h el e t t e r/ . T h es u b r o u t i n es t a r t i n gi n l i n e1 0 0d r a w st h eJ . B e f o r e

y o uG O S U B1 0 0y o up i c kw h a tc h a r a c t e ry o u w a n tt h eJ t o b e ,b y s e t t i n gA $ .

L o o ka t l i n e2 9 a n da t l i n e3 4 .I f y o up i c kA $ t o b e " " , a s i n g l es p a c e ,t h e nt h e

s u b r o u t i n ee r a s e s aJ f r o mt h a ts p o t .

1 6 9

Page 184: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 184/306

T h es u b r o u t i n ed r a w st h eJ w i t hi t s u p p e rl e f tc o r n e ra t t h es p o tx , yo n t h es c r e e n .

W h e ny o uc h a n g ex o r y ( o rb o t h ) ,t h eJ w i l lb e d r a w ni n a d i f f e r e n ts p o t .L i n e2 0

s a y st h a tt h ef i r s tJ w i l lb e d r a w nn e a rt h em i d d l eo f t h es c r e e n .

T h ev a r i a b l eD t e l l sh o wf a rt h eJ w i l lm o v ef r o m o n ed r a w i n gt o t h en e x t .L i n e

2 0 m a k e sD e q u a lt o 1 , b u tl i n e5 5 c h a n g e sD t o — 1 a f t e rs i xp i c t u r e sh a v e b e e n

d r a w n .

L i n e4 5 s a y st h a te a c hp i c t u r ew i l lb e d r a w na t t h es p o tw h e r ey i s l a r g e rt h a nt h e

l a s ty b y t h ea m o u n tD .

A s s i g n m e n t2 4 B :

1 . W r i t ea s h o r tp r o g r a mt h a tu s e ss u b r o u t i n e s .I t d o e s n ' th a v et o d o a n y t h i n g

u s e f u l , j u s tp r i n ts o m es i l l yt h i n g s .I n i t p u tt h r e es u b r o u t i n e s :

C a l lo n eo f t h e mt w i c ef r o mt h em a i np r o g r a m .

C a l lo n eo f t h e mf r o ma n o t h e ro f t h es u b r o u t i n e s .

C a l lo n eo f t h e mf r o m a nI F s t a t e m e n t .

1 7 0

Page 185: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 185/306

2 . E n t e rt h e" J u m p i n gJ " p r o g r a m a n dr u ni t . T h e nm a k et h e s ec h a n g e s :

C h a n g et h es u b r o u t i n es o t h a ti t p r i n t sy o u ro w ni n i t i a l .

C h a n g et h ec o l o ro f y o u ri n i t i a lt o b l u e .

C h a n g et h ej u m p i n gt o s l i d i n g( t om a k et h eJ m o v eh o r i z o n t a l l y i n s t e a d

v e r t i c a l l y ) .

C h a n g et h es t a r t i n gp o i n tt o t h el o w e rr i g h tc o r n e ri n s t e a do f t h em i d d l eo f t h e

s c r e e n .

C h a n g et h ed i s t a n c et h es l i d eg o e st o e i g h t s t e p si n s t e a do f s i x .

C h a n g et h es i z eo f e a c hs t e pf r o m o n et o t w o .

C h a n g et h es l i d i n gs o t h a ti t s l i d e s u p h i l l .U s eX = X + D : Y= Y - D .

C h a n g et h ep r o g r a ms o t h a tt h el e t t e rc h a n g e sc o l o rf r o mr e d( c o l o r2 ) t h r o u g h

a l l t h ec o l o r st o y e l l o w( c o l o r7 ) a s i t j u m p s .

3 . W r i t ea p r o g r a mt h a tw r i t e sy o u rt h r e ei n i t i a l so n t h es c r e e n ,e a c ho n ea d i f

f e r e n tc o l o r .T h e nm a k et h e mj u m pu p a n dd o w no n ea t a t i m e !

1 7 1

Page 186: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 186/306

I n s t r u c t o rN o t e s2 5 . L o g i c :A N D ,O R ,N O T

T h i sl e s s o nt r e a t st h eA N D ,O R ,a n dN O Tr e l a t i o n sa n dt h en u m e r i c a lv a l u e sf o r

t r u ea n df a l s e .

T h e r ea r et w oa b s t r a c ti d e a si n t h i sl e s s o nt h a tm a yg i v ed i f f i c u l t y .O n ei s t h a t

t r u ea n df a l s eh a v en u m e r i c a lv a l u e so f — 1 a n d0 . A n ye x p r e s s i o nt h a ti s o f t h e

f o r mo f a n a s s e r t i o n( p h r a s eA ) h a sa n u m e r i c a lv a l u eo f 0 o r — 1 . T h i sn u m b e ri s

t r e a t e dj u s tl i k ea n yo t h e rn u m b e r .I t c a nb e s t o r e di n a n u m e r i c a lv a r i a b l e ,

p r i n t e d ,o r u s e di n a n e x p r e s s i o n .M o s to f t e ni t i s u s e di n a n I F s t a t e m e n t .

T h eo t h e ra b s t r a c ti d e ac o m p o u n d st h e c o n f u s i o n .T h eI F s t a t e m e n td o e s n ' tr e a l l y

l o o kt o s e ei f p h r a s eA i s p r e s e n t .R a t h e r ,i t l o o k sf o ra n u m e r i c a l v a l u eb e t w e e nI F a n dT H E N .A n yn u m b e rt h a ti s n o n z e r oi s t r e a t e d a st r u e .W ec a l lt h i sa l i t t l e

w h i t el i e .

Y o uc a n u s et h el o g i c a lv a l u e si n e q u a t i o n st h a ta t f i r s tg l a n c e l o o kr i d i c u l o u s .F o r

e x a m p l e :

1 0 I N P U TA

2 0 B= 5 - 7 * ( A < 3 )3 0 P R I N TB

T h ev a l u eo f B w i l lb e 1 2 o r 5 d e p e n d i n go n w h e t h e rA i s l e s st h a n3 o r n o t .

1 7 2

Page 187: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 187/306

Page 188: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 188/306

s

L e s s o n2 5 . L o g i c :A N D ,O R ,N O T

A n o t h e rT e e n a g e rP r o g r a m

1 0 R E M< A N D ,O R #N O T>2 0 P O K E5 3 2 8 1 , 0 : P R I N T " { C L R } { D O W N } "3 0 I N P U T" N A M EM ; N $3 5 P R I N T4 0 I N P U T" A G E 1 1 ;A

4 5 P R I N T5 0 I P ( A > 1 2) A N D( A < 2 0 )T H E N P R I N T" M ; N $ ; MI S A T

E E N A G E R . { D O W N } M5 5 N F L A G = ( A < 1 3 O RA > 1 9 )6 0 I FN F L A G T H E N P R I N T" " ; N $ ; "I S N O TA T E E N A G E R 1

{ D O W N } 1 17 0 I F ( N O TN F L A G )A N D( A = 1 6 )T H E NP R I N T "A N D" ; N $ ;

1 1 I S { C Y N }S W E E T S I X T E E NI { W H T } "

S a v et o t a p eo r d i s kb e f o r e r u n n i n g .

W h a tD o e sA N DM e a n ?

T w ot h i n g sa r et r u ea b o u tt e e n a g e r s :T h e ya r eo v e r1 2 y e a r s o l da n dt h e ya r el e s s

t h a n2 0 y e a r so l d .L o o ka t l i n e5 0 .

I F ( y o ua r eo v e rI S )A N D( y o ua r el e s st h a nS O )T H E N( y o ua r eat e e n a g e r ) .

W h a tD o e sO RM e a n ?

I n l i n e5 5 t h eO Ri s u s e d .T w ot h i n g sa r es a i d :" a g ei s u n d e r1 3 "a n d" a g ei s

o v e r1 9 . "

O n l yo n eo f t h e mn e e d st o b e t r u ef o ry o ut o b e " n o ta t e e n a g e r . "

I F ( y o ua r e u n d e r1 3 )O R ( y o ua r eo v e rS O )T H E N *( y o ua r en o ta

t e e n a g e r ) .

T r u ea n dF a l s eA r eN u m b e r s

H o wd o e st h ec o m p u t e rd o i t ? I t s a y st r u ea n df a l s ea r en u m b e r s .

1 7 4

Page 189: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 189/306

R u l e :T r u ei s t h en u m b e r— 1 .

F a l s ei s t h en u m b e r0 .

( I t i s e a s yt o r e m e m b e rt h a t0 i s f a l s eb e c a u s e0 i s t h eg r a d ey o ug e ti f y o u rh o m e

w o r ki s f a l s e . )

T o s e e t h e s en u m b e r s ,e n t e rt h i si n t h ee d i tm o d e :

P R I N T3 = 7

T h ec o m p u t e rc h e c k st o s e ei f 3 r e a l l yd o e se q u a l7 . I t d o e s n ' t ,s o i t

p r i n t sa 0 m e a n i n gf a l s e .

A n dt h i s :

P R I N T3 = 3

T h ec o m p u t e rc h e c k st o s e ei f 3 = 3 . I t i s ,s o t h ec o m p u t e rp r i n t s— 1

m e a n i n gt r u e .

1 7 5

Page 190: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 190/306

P u t t i n gT r u ea n dF a l s ei n B o x e s

T h en u m b e r sf o r t r u ea n df a l s ea r et r e a t e dj u s tl i k eo t h e rn u m b e r s a n d

c a nb e s t o r e di n b o x e s w i t h n u m e r i c a lv a r i a b l en a m e so n t h ef r o n t .R u nt h i s :

1 0 N = ( 3 = 2 2 )2 0 P R I N TN

T h en u m b e r0 i s s t o r e di n t h eb o xN b e c a u s e3 = 2 2 i s f a l s e .

A n dt h i s :

1 0 N = w b i i « i i b 1 12 0 P R I N TN

T h en u m b e r— 1 i ss t o r e di n t h eb o xN b e c a u s et h et w ol e t t e r si n t h eq u o t e sa r e

t h es a m e ,s o t h es t a t e m e n t" B " = " B "i s t r u e .

T h eI F S t a t e m e n tT e l l sL i t t l eW h i t eL i e s

T h eI F s t a t e m e n tl o o k sl i k et h i s :

1 0 I P ( p h r a s eA ) T H E N( s t a t e m e n tC )

T r yt h e s ei n t h ee d i tm o d e :

I P 0 T H E NP R I N T" T R U E "

I F - 1 T H E N P R I N T" T R U E "

N o wt r y t h i s :

I F 2 2 T H E N P R I N T" T R U E "

R u l e :I n a n I F ,t h ec o m p u t e rl o o k sa t p h r a s eA .

I f i t i s z e r o ,t h ec o m p u t e rs a y s" p h r a s eA i s f a l s e , "a n ds k i p sw h a ti s a f t e rT H E N

1 7 6

Page 191: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 191/306

I f i t i s n o tz e r o ,t h ec o m p u t e rs a y s" p h r a s eA i s t r u e , "a n do b e y st h es t a t e m e n t

a f t e rT H E N .

T h eI F s t a t e m e n tt e l l sl i t t l ew h i t el i e s .T r u ei s s u p p o s e dt o b e t h en u m b e r— 1 , b u t

t h eI F s t r e t c h e st h et r u t h t os a y" t r u ei s a n y t h i n gt h a ti s n o tf a l s e , "t h a ti s , a n y

n u m b e rt h a ti s n o tz e r oi s t r u e .

L I T T L EW H I T E

M E )

W h a tD o e sN O TM e a n ?

N O Tc h a n g e sf a l s et o t r u ea n dt r u e t of a l s e .T r yt h i s :

1 0 R E M D O U B L EN E G A T I V E

2 0 N = - l3 0 P R I N T" N " ; T A B ( 1 0 ) 7 N4 0 P R I N T" N O TN " ; T A B ( 1 0 ) ; N O TN5 0 P R I N T" N O TN O TN " ; T A B ( 1 0 ) ; N O T ( N O TN )6 0 R E M T H EC O M P U T E RK N O W S T H A T" I D O N ' T H A V EN O . . 16 1 R E MM E A N S" I D O H A V E . . "

S a v et o t a p e o rd i s k .

1 7 7

Page 192: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 192/306

C a r e f u l !N O T( T R U E )= F A L S E

a n d N O T( F A L S E )= T R U E

w o r ko n l yf o r r e a lT R U E ,t h eo n ew h e r e

T r u e= —1 .

I t d o e s n ' tw o r kf o rt h el i t t l ew h i t el i e sw h e r e

T r u e= a n yn u m b e re x c e p t0 .

T r yt h i s .P u tN = 3 i n t h ea b o v ep r o g r a ma n ds e et h a t( N O T3 ) d o e s n ' t g i v e0 .

T h eL o g i c a lS i g n s

Y o uc a nu s et h e s es i xs y m b o l si n a p h r a s eA :

= E q u a l

< > N o te q u a l

< L e s st h a n

> G r e a t e rt h a n

< = L e s st h a no r e q u a l

> = G r e a t e rt h a no r e q u a l

Y o uh a v et o p r e s st w ok e y st o m a k et h e< > s i g n ,t h e< = s i g n ,a n dt h e> = s i g n .

1 7 8

Page 193: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 193/306

Page 194: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 194/306

I n s t r u c t o rN o t e s2 6 . S n i p p i n gS t r i n g s :L E F T $ ,M I D I ,R I G H T ! ,L E N

I n t h i sl e s s o n t h ef u n c t i o n s :

L E F T $M I D $R I G H T SL E N

a r ed e m o n s t r a t e d .T h eu s eo f M I D $ ( )w i t ht h r e ea r g u m e n t si s s h o w n ,b u t n o t

w i t ht h et h i r da r g u m e n to m i t t e d .

T h e s ef u n c t i o n s t o g e t h e rw i t ht h ec o n c a t e n a t i o no p e r a t i o n( + )a l l o wc o m p l e t e

f r e e d o mt o c u tu p s t r i n g sa n dg l u et h e mb a c ki n a n yo r d e r .

A s i n e a r l i e re x p l a n a t i o n s ,t h em a i nc h a r a c t e r i s t i c so f t h e f u n c t i o n sa r es h o w n ,b u t

n o ta l l t h es p e c i a lc a s e s ,e s p e c i a l l yt h o s et h a tl e a dt o e r r o rm e s s a g e s .I t i s b e t t e r

t h a te x t e n s i v ee x p l a n a t i o n sn o tc l u t t e ru p t h et e x t .I f t h es t u d e n t e x p e r i e n c d i f f i

c u l t y ,a n e x p e r i e n c e dp r o g r a m m e ro r a n a d u l tc o n s u l t i n g t h eC o m m o d o r em a n

u a l ss h o u l dc l e a ru p t h ep r o b l e m .

Q u e s t i o n s :

1 . I fy o uw a n tt o s a v et h eS T A Rf r o mS T A R SA N DS T R I P E S ,w h a tf u n c t i o nw i l l

y o uu s e ?W h a ta r g u m e n t s ?

2 . I f y o u w a n tt o s a v eA N D ,w h a tf u n c t i o na n da r g u m e n t s ?

3 . I f y o u w a n tt o c o u n tt h en u m b e ro f c h a r a c t e r si n t h es t r i n gP Q $ ,w h a tf u n c t i o

d o y o uu s e ?W h a ta r g u m e n t ?

4 . W h a ti s w r o n gw i t he a c ho f t h e s el i n e s ?

1 0 A $ = L E F T $ ( 4 , D $ )

1 0 R I G H T $ ( R $ , I )1 0 F $ = M I D $ ( A , 3 )1 0 J $ = L E F T ( R $ , Y T )

1 8 0

Page 195: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 195/306

5 . W h a tt w oa r g u m e n t sd o e st h eR I G H T $ ( )f u n c t i o nn e e d ?

6 . W h a tf u n c t i o nw i l ls n i p t h et h i r da n df o u r t hl e t t e r so u to f a w o r d ?

7 . W r i t ea s h o r tp r o g r a mt h a t t a k e st h ew o r dC O M P U T E Ra n d m a k e si t i n t o

P U T E R C O M .

1 8 1

Page 196: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 196/306

L e s s o n2 6 . S n i p p i n gS t r i n g s :L E F T I ,M I D I ,R I G H T ! ,L E N

G l u i n gS t r i n g s

Y o ua l r e a d yk n o wh o wt o g l u es t r i n g st o g e t h e r :

5 5 A $ = M C O N "+ " C A T 1 1+ " E N "+ " A T I O N "6 0 P R I N TA $

T h er e a ln a m ef o rg l u i n gi s c o n c a t e n a t i o n .

C o n c a t e n a t i o nm e a n s" m a k ea c h a i n . "M a y b ew e s h o u l dc a l lt h e mc h a i n s i n s t e

o f s t r i n g s .

S n i p p i n gS t r i n g s

L e t ' sc u t a p i e c eo f fa s t r i n g .E n t e ra n dr u n :

1 0 R E M> S C I S S O R S>

2 0 P R I N T 1 1 { C L R } 1 1

3 0 N $ = " 1 2 3 4 5 6 7 8 9 "3 5 Q $ = L E F T $ ( N $ , 4 )4 0 P R I N T N $ , Q $

T h e L E F T Sf u n c t i o n s n i p so f ft h el e f te n do f t h es t r i n g .T h es n i p p e d - o f fp i e c ec a n

b e p u ti n a b o xo r p r i n t e do r w h a t e v e r .

1 8 2

Page 197: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 197/306

R u l e :T h e L E F T $ ( )f u n c t i o nn e e d st w ot h i n g si n s i d et h e( ) .

1 . T h es t r i n gy o u w a n tt o s n i p .

2 . T h en u m b e ro f c h a r a c t e r sy o u w a n tt o k e e p .

T r ya n o t h e r .C h a n g el i n e4 0 t o :

4 0 P R I N TR I G H T $ ( N $ , 3 )

a n dr u nt h ep r o g r a ma g a i n .T h i st i m et h ec o m p u t e rp r i n t s :

7 8 9

R I G H T $ ( )i s l i k eL E F T $ ( )e x c e p tt h ec h a r a c t e r s a r es a v e do f ft h er i g h te n do f t h e

s t r i n g .( B u tt h e o r d e ro f l e t t e r si s s t i l ll e f tt o r i g h t . )

M o r eS n i p p i n ga n dG l u i n g

R u n :

1 0 R E M: : : S C I S S O R S A N DG L U E: : :

2 0 P R I N T " { C L R } "3 0 N $ = " T H E C A T ' SM E O W 1 1

3 5 F O R1 = 1 T O 9

4 0 L $ = L E F T $ ( N $ , I ) : R $ = R I G H T $ ( N $ , I )5 0 P R I N TI ; L $ + R $

6 0 N E X TI

T h ep i e c e s o fs t r i n gy o us n i po f fc a n b eg l u e db a c kt o g e t h e ri n a d i f f e r e n t o r d

A d dt h i s l i n ea n dr u n :

5 5 I F 1 = 4 T H E NP R I N T :P R I N TR $ + L $ : P R I N T -

1 8 3

Page 198: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 198/306

H o wL o n gI s t h eS t r i n g ?

R u n :

1 0 R E MH O WL O N G2 0 P R I N T" { C L R } "3 0 I N P U T" G I V EM E A S T R I N Gj " ; N $3 5 P R I N Tf l { C L R } f l4 0 L = L E N ( N $ )5 0 P R I N T" T H ES T R I N G : { D O W N } "5 2 P R I N TI I I H ; N $ ; M I { D O W N } "5 5 P R I N T" I S " ; L ; " C H A R A C T E R SL O N G "

T h ef u n c t i o nL E N ( )t e l l st h en u m b e ro f c h a r a c t e r si n t h es t r i n g .I t c o u n t se v e r y

t h i n gi n t h es t r i n g ,e v e nt h es p a c e s .

C u t t i n ga P i e c eO u to f t h eM i d d l e

T h eM I D $ ( )f u n c t i o nc u t sa p i e c eo u to f t h em i d d l eo f t h es t r i n g .

R u n :

1 0 R E M# # # M I D D L E# # #

2 0 P R I N T n l C L R j M3 0 N $ = " W Q X E M I D D U I C X Z "4 0 P $ = M I D $ ( N $ , 5 , 3 )4 5 P R I N TP $

1 8 4

Page 199: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 199/306

I n l i n e4 0 : P $ =M I D $ ( T i T $ , 5 , 3 )m e a n s :

G e tt h es t r i n gf r o m b o x N $ .

C o u n to v e rf i v el e t t e r sa n ds t a r ts a v i n gl e t t e r si n t ob o xP $ .

S a v et h r e el e t t e r s .

L o o k ,M a ,N o S p a c e s

E n t e r :

1 0 R E M < N OS P A C E S >2 0 P R I N TM { C L R } { 3D O W N } 1 1

2 1 P R I N T "G I V EM E A L O N GS E N T E N C E { D O W N } "3 5 I N P U TS $4 0 L = L E N ( S $ )4 5 T $ = I M I

5 0 F O R1 = 1 T O L : R E MR U NT H R O U G HT H EW O R D S6 0 L $ = M I D $ ( S $ , I , 1 ) : R E ML O O K A TE A C HL E T T E R7 0 I FL $ < > "" T H E NT $ = T $ + L $ : R E MS A V EO N L Y L E T T E R S8 0 N E X TI9 0 P R I N TM { C L R } { 2 D O W N }" ; T $

L i n e6 0 s n i p sj u s to n el e t t e ra t a t i m eo u to f t h em i d d l eo f t h es t r i n g .

A R e a lC l o c k

T h eC o m m o d o r e6 4 h a sa c l o c kt h a ti s a l w a y sr u n n i n g .T h et i m ei s k e p ti n a

s t r i n gn a m e dT I $ .T h e r ea r es i xd i g i t si n t h es t r i n g .Y o uh a v et o s p l i tt h e ma p a r t

t o m a k et h e c l o c ke a s yt o r e a d .Y o uc a nr e s e ti t w i t ha L E Ts t a t e m e n t .

T I $ = " 1 2 3 4 5 6 " m e a n s1 2 h o u r s ,3 4 m i n u t e s ,a n d5 6 s e c o n d s .

R u n

1 0 0 0 0R E M: : : C L O C K: : :1 0 0 2 0T I $ = " 1 2 0 0 0 0 " : R E MN O O N1 0 0 2 5P R I N T" { C L R } 1 11 0 0 2 9 P R I N T" { H O M E } { 2 D O W N } { 2R I G H T } " ;1 0 0 3 0P R I N TL E F T $ ( T I $ , 2 ) ? " : " ; M I D $ ( T I $ , 3 , 2 ) ; " : " ? R I

H T $ ( T I $ , 2 )1 0 0 3 5G O T O1 0 0 2 9

1 8 5

Page 200: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 200/306

Page 201: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 201/306

I n s t r u c t o rN o t e s2 7 . S w i t c h i n gN u m b e r sw i t hS t r i n g s

T h i sl e s s o nt r e a t st w of u n c t i o n s ,S T R $a n dV A L .A g e n e r a lr e v i e wo f t h ec o n c e p to f f u n c t i o ni s a l s og i v e n .

S T R $t a k e s an u m b e ra n d m a k e sa s t r i n gt h a tr e p r e s e n t si t .

V A Ld o e sj u s tt h eo p p o s i t e ,t a k i n ga s t r i n ga n d m a k i n ga n u m e r i c a lv a l u ef r o mi t .

I t a c c e p t sd e c i m a la n ds c i e n t i f i cn o t a t i o n( f o re x a m p l e ,1 . 2E + 3 1 ) .I f t h ef i r s t

c h a r a c t e ri s n o ta d e c i m a ld i g i t ,+ o r — ,i t r e t u r n s t h ev a l u e0 . O t h e r w i s e ,i t s c a n s

t h en u m b e r ,t e r m i n a t i n ga t t h ef i r s tn o n n u m e r i c a lc h a r a c t e r ( o t h e rt h a nt h eE o f

t h es c i e n t i f i cn o t a t i o n ) .

T h i si n t e r c o n v e r s i o n o f t h et w om a i nt y p e so f v a r i a b l e sa d d sg r e a tf l e x i b i l i t yt o

p r o g r a m si n v o l v i n gn u m b e r s .

F u n c t i o n sr e t u r n av a l u et o t h e e x p r e s s i o nt h e ya r ei n . Y o ua l s os a yt h a tf u n c t i o n

a r ec a l l e d j u s ta s y o uc a l la s u b r o u t i n e .T h er e a s o ni s , o f c o u r s e ,t h a tf u n c t i o n sa r e

i m p l e m e n t e da s s u b r o u t i n e so n t h em a c h i n ec o d el e v e l .

Q u e s t i o n s :

1 . I f y o u rn u m b e rm a r c h e st o oq u i c k l yi n p r o b l e m2 o f t h ea s s i g n m e n t ,h o wd o

y o us l o wi t d o w n ?

2 . I f y o u rp r o g r a mh a st h es t r i n g" I N1 7 3 2G E O R G EW A S H I N G T O N WB O R N " ,w r i t e af e wl i n e st o a n s w e rt h eq u e s t i o n" H o wl o n ga g ow a sW a s h

i n g t o nb o r n ? " ( Y o un e e dt o g e tt h eb i r t hd a t ef r o mt h es t r i n ga n dc o n v e r ti t t o

a n u m b e r . )

3 . W h a ti s a v a l u e .W h a ti s m e a n t b y" a f u n c t i o nr e t u r n sa v a l u e . "W h a ta r es o m e

o f t h et h i n g sy o uc a nd o w i t ht h ev a l u e ?

4 . H o wd o y o uc o n v e r tt h es t r i n g" 1 9 9 9 "t o a n u m b e ry o uc a nu s ei n a r i t h m e t i c

1 8 7

Page 202: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 202/306

5 . W h a ti s a n a r g u m e n to f a f u n c t i o n ?H o wm a n ya r g u m e n t sd o e st h eM I D $ ( )

f u n c t i o nh a v e ?H o wm a n yf o rt h eC H R $ ( )f u n c t i o n ?

6 . C a ny o up u ta f u n c t i o na t t h es t a r to f a l i n e ?

7 . W h a tw i l ly o us e ei f y o u rp r o g r a mh a st h el i n e :

6 5 P R I N T T I $

1 8 8

Page 203: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 203/306

L e s s o n2 7 . S w i t c h i n gN u m b e r sw i t hS t r i n g s

T h i sl e s s o ne x p l a i n st w of u n c t i o n s :V A L ( )a n dS T R $ ( ) .

M a k i n gS t r i n g si n t oN u m b e r s

W eh a v e t w ok i n d so f v a r i a b l e s : s t r i n g sa n dn u m b e r s .W ec a nc h a n g e o n ek i n d

i n t ot h eo t h e r .

R u n :

1 0 R E M S T R I N G SI N T ON U M B E R S2 0 P R I N T" { C L R } "3 0 L $ = I I 1 2 3 I I : M $ = I I 7 8 9 M5 0 L = V A L ( L $ ) : M = V A L ( M $ )7 0 P R I N TL

7 2 P R I N T M7 4 P R I N T" "

7 6 P R I N TL + M

V A Ls t a n d sf o rv a l u e .I t c h a n g e sa s t r i n gt o a n u m b e r ,i f i t c a n .

1 8 9

Page 204: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 204/306

M a k i n g N u m b e r si n t oS t r i n g s

R u n :

1 0 R E M N U M B E R SI N T OS T R I N G S2 0 P R I N T" { C L R } "2 1 P O K E5 3 2 8 1 , 02 5 I N P U T" G I V EM E A N U M B E R " , * N B3 0 N $ = S T R $ ( N B )3 5 L = L E N ( N $ )4 0 F O RI = L T O 1 S T E P - 14 5 B $ = B $ + M I D $ ( N $ , I , 1 )5 0 N E X TI6 0 P R I N T" { C Y N } { D O W N } H E R EI T I SB A C K W A R D S { D O W N } '6 5 P R I N T " { D O W N } " ; B $

S T R $s t a n d sf o rs t r i n g .I t c h a n g e sa n u m b e ri n t oa s t r i n g .

F u n c t i o n sA g a i n

I n t h i sb o o kw e u s et h e s ef u n c t i o n s :

R N D ( )

L E F T $ (

V A L ( )C H R $ (

M I D $ ( )

A S C ( )

I N T ( )

R I G H T $ (

S T R $ ( )P E E K ( )

L E N ( )

R u l e sa b o u tf u n c t i o n s :

F u n c t i o n sa l w a y sh a v e( ) w i t ho n eo r m o r ea r g u m e n t si n t h e m .E x a m p l e :

M I D $ ( D $ , 5 J )h a st h r e ea r g u m e n t s :D $ ,5 , a n dJ .

1 9 0

Page 205: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 205/306

T h ea r g u m e n t sm a yb e n u m b e r so r s t r i n g so r s o m eo f e a c h .

A f u n c t i o ni s n o ta s t a t e m e n t .I t c a n n o tb e t h ef i r s tr e s e r v e dw o r do n a l i n e .

C o r r e c t :1 0 l e t d = l e n $ ( c s $ )

W r o n g : 1 0 l e n ( c s $ ) = 5

A f u n c t i o na c t sj u s tl i k ea n u m b e ro r as t r i n g .W es a yt h e f u n c t i o nr e t u r n sa v a l u e .

T h ev a l u ec a n b ep u ti n a b o xo r p r i n t e dj u s tl i k ea n yo t h e rn u m b e ro r s t r i n g .T h e

f u n c t i o nm a ye v e nb e a n a r g u m e n ti n a n o t h e rf u n c t i o n .

T h ea r g u m e n t st e l lw h i c hv a l u ei s r e t u r n e d .

( R e m e m b e r ,s t r i n gv a l u e sg o i n s t r i n gv a r i a b l e b o x e s ,n u m e r i c a lv a l u e sg o i n

n u m e r i c a lb o x e s . )

P r a c t i c ew i t h F u n c t i o n s

F o re a c hf u n c t i o ni n t h el i s tb e l o w :

G i v et h en a m e so f t h ea r g u m e n t s ,a n dt e l lw h e t h e rt h ea r g u m e n tv a l u ei s a n u m

b e ro r as t r i n g .T e l li f t h ea r g u m e n ti s a c o n s t a n t ,v a r i a b l e ,o r f u n c t i o n .

R N D ( 8 )

R I G H T $ ( U $ , Y )

V A L ( " 2 3 1 " )

S T R $ ( I N T ( R N D ( 8 ) ) )

f n

a r g

f n

a r g

f n

a r g

f n

a r g

1 9 1

Page 206: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 206/306

E a c hl i n eb e l o wh a se r r o r s .E x p l a i nw h a ti s w r o n g .

1 0 I N T ( Q )= 6 5

1 0 D $= L E F T ( R $ , 1 )

1 0 P W $ = V A L $ ( F )

1 0 P R I N TC H R $

A s s i g n m e n t2 7 :

1 . W r i t ea p r o g r a mt h a ta s k sf o ra n u m b e r .T h e n m a k ea n o t h e rn u m b e rt h a ti s

b a c k w a r df r o mt h ef i r s t ,a n da d dt h e mt o g e t h e r . P r i n ta l l t h r e en u m b e r sl i k ea n

a d d i t i o np r o b l e m( w i t h a+ s i g na n da l i n eu n d e rt h en u m b e r s ) .

2 . M a k ea n u m b e rp l a yl e a p f r o gs l o w l ya c r o s st h es c r e e n .T h a ti s , w r i t ei t o n t h e

s c r e e n ,t h e nt a k ei t s l a s td i g i ta n dm o v ei t t o t h ef r o n t .K e e pr e p e a t i n g .D o n ' t

f o r g e tt o e r a s ee a c hd i g i tw h e ny o um o v ei t .

1 9 2

Page 207: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 207/306

I n s t r u c t o rN o t e s2 8 . A c t i o nG a m e sa n dt h eF u n c t i o nK e y s

T h i sl o n gl e s s o ni n t r o d u c e s t h e f u n c t i o nk e y sa n dt h ek e y b o a r d ' sb o x .I t s h o w s

h o wt o c o n t r o lt w os i m u l t a n e o u s l ym o v i n go b j e c t so n t h es c r e e n ,a n dh o wt o u s e

P E E Kt o d e t e c tc o l l i s i o n s .

W ed e v e l o pt h e" C u p i d "g a m ei n t h i sl e s s o n ,o n ep i e c ea t a t i m e .I t s e r v e sa s a

p r o t o t y p ef o rm a n yd i f f e r e n tg a m e s .T h i sg a m eu s e sa s o m e w h a ta b s t r a c tm e t h o d

o f m o v i n gt h ea r r o ws h o tb y a d i a m o n d ,w h i l et h ed i a m o n dc a ns t i l lm o v ea n db e

c o n t r o l l e df r o mt h ek e y b o a r d .T h es t u d e n tm a yp r o f i tf r o mh e l pi n u n d e r s t a n d

h o wt h em o v e m e n t sa r ea c h i e v e d .

W h e nd r a w i n gm o v i n go b j e c t s ,y o u n e e dt o e r a s ee a c ho l di m a g eb e f o r e t h e n e

i m a g ei s d r a w n .

A h i to n a t a r g e ti s d e t e c t e db y u s i n gP E E Kt o t e s tt h es q u a r ei n f r o n to f t h e

p r o j e c t i l e .I f t h e r ea r es e v e r a lk i n d so f t a r g e t s ,i t i s b e t t e r t ot e s ti f t h e s q u a r ei s

b a c k g r o u n d .I f n o t ,t h e nj u m pt o a s u b r o u t i n et h a ta s k s t h eA S C I In u m b e ro f t h e

t a r g e tt y p es o a p p r o p r i a t ea c t i o nc a nb e t a k e n .

G r a p h i c sg a m e sm a yg r o wt o b e r a t h e rl o n g .B A S I Ci s a l i t t l es l o wf o rs u c hg a m e s .M a x i m u ms p e e dc a nb e o b t a i n e di f t h ew o r k i n gp a r to f t h ep r o g r a mi s

f i r s t ,a n dt h ei n i t i a l i z a t i o np a r ti s a t t h ee n d ,r e a c h e db y a c a l lf r o me a r l yi n t h e

p r o g r a m .T h i sf o r m a ti s d i s c u s s e di n l e s s o n3 2 .

F o rm a x i m u ms p e e d ,a v o i dr e p e a t e d l yc o n v e r t i n gn u m e r i c a lc o n s t a n t st o f l o a t i n g

p o i n ta s t h ep r o g r a mr u n s .T h a ti s w h yl i n e s5 5 ,6 0 ,a n d6 5 c o m p a r eK $ t o v a r i

a b l e sF l , F 3 ,a n dZ 0 r a t h e rt h a nt o 4 , 5 ,a n d6 4 .T h i sp r a c t i c ei s p r o b a b l yt h e

m o s ti m p o r t a n ts i n g l ef a c t o r i np r o d u c i n gf a s tp r o g r a m s .

T h ef a s t e s ta n dm o s tv e r s a t i l ew a yt o m a k eg r a p h i c si s t o u s es p r i t e s .T h i st o p i cw i l lb e c o v e r e di n a l a t e rs e c t i o n .

1 9 3

Page 208: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 208/306

Q u e s t i o n s :

1 . W h a tA S C I In u m b e r sd o t h ef u n c t i o nk e y sh a v e ?

2 . H o wc a ny o ut e l lt h a ta f u n c t i o nk e yh a sb e e np r e s s e d ?

3 . H o wc a ny o ud e t e c t t h a ta k e yi s b e i n g h e l dd o w n ?

4 . W h a tn u m b e rb o xh o l d st h ek e y b e i n gp r e s s e d ?

5 . W h a tn u m b e ri s i n t h eb o xi f n o k e yi s b e i n gp r e s s e d ?

6 . E x p l a i nh o wt h ec o m p u t e rk n o w st o m o v et h ea r r o wa n dt h ed i a m o n da t t h e

s a m et i m e .

1 9 4

Page 209: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 209/306

L e s s o n2 8 . A c t i o nG a m e sa n dt h eF u n c t i o nK e y s

T h eF u n c t i o nK e y s

T h ef o u rl a r g ek e y so n t h er i g h ts i d eo f t h eC o m m o d o r e6 4 k e y b o a r da r e c a l l e d

f u n c t i o nk e y s .

T h e yh a v et h e s eA S C I In u m b e r s :

f l

( 2

f 3

f 4

f 5

f 6

i 7

f 8

H o wc a ny o u

1 3 3

1 3 7

1 3 4

1 3 8

1 3 5

1 3 9

1 3 6

1 4 0

f i n do u t

( S H I F T e df l )

( S H I F T e df 3 )

( S H I F T e df 5 )

( S H I F T e df 7 )

i f a f u n c t i o nk e yi s b e i n gp r e s s e d ?

Y o uc a n n o t u s et h eI N P U Ts t a t e m e n t .I t i g n o r e s t h e f u n c t i o nk e y s .Y o uu s et h e

G E Ts t a t e m e n t .

E n t e r :

1 0 R E MF U N C T I O NK E Y S1 5 D $ = " { C L R } { 5D O W N }"

1 6 P R I N TD $

2 0 F 1 $ = C H R $ ( 1 3 3 )3 0 G E T K $ : I FK $ = " "T H E N3 0

4 0 I FK $ = F 1 $T H E NP R I N TD $ ; " Y O UP R E S S E D F 1 " : G O T O30

5 0 P R I N TD $ ; K $ ;6 0 G O T O3 0

( R e m e m b e rt h es p a c eb e f o r et h eq u o t a t i o nm a r ka t t h ee n do f l i n e1 5 . )

R u ni t . P r e s sa n yk e ya n ds e et h a ti t i s p r i n t e dt o t h es c r e e n .B u tw h e ny o up r e s s

t h ef 1 k e y ,t h es p e c i a lm e s s a g eg e t s p r i n t e d .N o t i c et h a tt r y i n gt o P R I N Tc h a r a c t e

, n u m b e r1 3 3g i v e sn o t h i n g .T h ee i g h t c h a r a c t e r st h a ta r ef u n c t i o nk e y sd o n o t

p r i n t .

1 9 5

Page 210: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 210/306

U s i n gt h eF u n c t i o nK e y si n P r o g r a m s

F i r s ty o uG E Ta o n e - c h a r a c t e rs t r i n gf r o mt h ek e y b o a r d .I f i t h a sA S C I In u m b e r

1 3 3 t h r o u g h1 4 0 ,i t i s o n eo f t h e f u n c t i o nk e y s .T h es h o r tp r o g r a ma b o v es h o w s

h o wt o d o t h i s .

M a k et h e s ec h a n g e si n t h ea b o v ep r o g r a m :

1 2 c = 2

4 0 I P K $ = F 1 $T H E N G O S U B2 0 0

2 0 0 R E M S C R E E NC O L O RC H A N G E

2 1 0 P O K E 5 3 2 8 1 , C

2 2 0 C = C + 1 : I FC = 1 5T H E NC = 22 9 9 R E T U R N

N o wt h ef l k e ys e n d sy o ut o a s u b r o u t i n et h a tc h a n g e ss c r e e nc o l o r s .

T h eT r o u b l ew i t hG E T

W i t h G E T ,t h ec o m p u t e rc a n ' tt e l li f y o uj u s tg a v ea k e ya q u i c kp r e s so r a r eh o l d

i n g t h ek e yd o w n .

S u p p o s ey o u w a n tt o c o n t r o la c a ro n t h es c r e e nb y p u s h i n gt h eS ( f o rs p e e d )k e y .

A s l o n ga s t h eS k e yi s d o w n ,t h ec a r g o e s .W h e ny o ul e tu p o n t h eS k e y ,t h ec a r

s t o p s .T h eG E Ts t a t e m e n ti s n o tg o o df o rd o i n gt h i s .

1 9 6

Page 211: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 211/306

L o o k i n gi n t h eK e y b o a r d ' sB o x

H e r ei s h o wt o t e l li f a k e yi s b e i n gp r e s s e d .

T h e r ei s a m e m o r yb o xt h a tt e l l si f a k e yi s b e i n gp r e s s e d .I t s a d d r e s si s 1 9 7 .

T h eb o xh o l d st h en u m b e r6 4 i f n o k e yi s b e i n gp r e s s e d .

I f a k e yi s b e i n gp r e s s e d ,i t h o l d sa n u m b e rf r o m0 t o 6 3 t o t e l lw h i c ho n e .( I ft w o

k e y sa r eb e i n gp r e s s e d ,i t h o l d st h eh i g h e rn u m b e ro f t h et w o . )

T r yt h i s :

1 0 R E MK E Y B O A R D ' SB O X

2 0 P R I N T" { C L R } 1 13 0 P R I N T" P R E S SA N YK E Y 1 1

4 0 N = P E E K ( 1 9 7 )5 0 P R I N TN6 0 G O T O4 0

N o t i c et h a tt h en u m b e rk e e p sp r i n t i n ga s l o n ga s y o uh o l dt h ek e yd o w n .

T r y h o l d i n gt w ok e y sd o w na t o n c e .T h eb i g g e rn u m b e ri s t h eo n et h a ti s i n t h e

b o x .

T h eo n l yk e y st h a td o n o t p u tn u m b e r si n t h eb o xa r eC T R L ,R U N / S T O P ,R ES T O R E ,S H I F T ,S H I F T / L O C K ,a n dt h eC o m m o d o r eK e y .

A s s i g n m e n t2 8 A :

1 . M a k ea t a b l es h o w i n gt h en u m b e r

i n b o x1 9 7f o re a c hk e yo n t h e

k e y b o a r d . T h i st a b l ew i l lb e

u s e f u lw h e ny o ud e s i g n

g a m e s .( N o t e :t h e r ei s n o

k e yg i v i n gn u m b e r s1 5 ,5 2 ,

5 8 , 6 0 ,6 1 ,a n d6 3 . )

1 9 7

Page 212: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 212/306

M o v i n ga D i a m o n d

M a k et h ef l a n df 3 k e y sc o n t r o la m o v i n gd i a m o n d .

I t m o v e s u pw h i l ey o up r e s s t h ef 1 k e y .

I t m o v e sd o w nw h i l ey o up r e s s t h ef 3 k e y .

I t s t o p si f y o ud o n ' t p r e s se i t h e rk e y .

1 0 r e m c u p i d1 1 P R I N T" { C L R } "1 2 P O K E 5 3 2 8 1 , 21 4 D $ = M { 4 0S P A C E S } 1 11 5 F O R1 = 1 T O 2 5 : P R I N TD $ : N E X TI

2 0 F 1 = 4 : F 3 = 5 : Z 0 = 6 42 2 S B = 1 9 8 2

2 4 S C = 1 1 0 2

2 6 Y = S C5 0 K = P E E K ( 1 9 7 )5 5 I F K = Z 0 T H E ND = 0

6 0 I F K = F 1T H E ND = - 4 0

6 5 I F K = F 3T H E ND = 4 09 0 P O K E Y , 3 2

1 2 0 Y = Y + D1 3 0 I F Y > S B T H E N Y = S B

1 4 0 I FY < S C T H E N Y = S C

1 7 0 P O K EY , 9 0

1 9 9 G O T O5 0

S a v eb e f o r e r u n n i n g .

1 9 8

Page 213: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 213/306

Page 214: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 214/306

S e c o n d ,Q h a sn u m b e r5 8 ,h i g h e rt h a nf l o r f 3 , s o e v e ni f t w ok e y sa r ep r e s s e da t

o n c e ,a n a r r o ww i l ls h o o t .( B ec a r e f u ln o tt o h o l dt h eQ k e yd o w n ,o r e l s et h ef l

a n df 2 k e y sw i l ln o tc o n t r o lt h ed i a m o n d . )

A d dt h e s el i n e s :

2 8 S = 0 : X = Y7 0 I PK = 6 2A N DS = 0 T H E NS = S + 17 5 I F S < > 0T H E NG O S U B3 0 03 0 0 R E M S H O O T3 1 0 I F S = lT H E N X = Y - 1 : P O K EX , 3 1 : S = 2 : R E T U R N

3 1 5 P O K E X , 3 23 1 6 I F S = 3 9T H E N S = 0 : R E T U R N

3 2 0 X = X - 1 : S = S + 13 3 0 P O K E X , 3 13 9 9 R E T U R N

T h eR i g h tW a yt o S h o o t

I t ' sn o g o o di f t h ed i a m o n dh a st o s t o pm o v i n gw h i l et h ea r r o wm o v e s .

S o w h e nl i n e7 0 s e e st h a tt h es h o o t i n gk e yi s p r e s s e d ,i t d o e s n ' tj u s tj u m pt o a

s u b r o u t i n et h a ts h o o t st h ea r r o wa c r o s st h es c r e e n .I n s t e a d ,i t s e t sa f l a g .T h ef l a g

i s t h e v a r i a b l eS . T h ef l a gi s s e tw h e nS < > 0 .

W h e nt h ef l a gi s s e t ,t h ec o m p u t e rt a k e s t u r n sm o v i n gt h ea r r o wo n es p a c e ,t h e nt h ed i a m o n d ,t h e nt h ea r r o wa g a i n ,a n ds o f o r t h .

2 0 0

Page 215: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 215/306

T h em o v ea r r o ws u b r o u t i n eh a st o r e c o g n i z et w ot h i n g s :

F i r s t ,i s t h i sa n e wa r r o w , o rj u s to n et h a ta l r e a d ys t a r t e d a c r o s s ?

L i n e3 1 0d o e st h i s .S e q u a l s1 o n l yf o ra n e wa r r o w .

A f t e re a c hm o v eo f t h e a r r o w ,S g e t so n eb i g g e ra n dx , t h e p o s i t i o n o f t h e a

g e t so n es m a l l e r ,s o t h ea r r o wg o e st o t h er i g h t .

S e c o n d ,t h ea r r o wm u s tb e s t o p p e dw h e ni t g e t st o t h eo t h e rs i d eo f t h es c r e e n ,

a n dt h ed i a m o n dm u s tb e t o l dt h a ti t c a ns h o o t a n o t h e ra r r o w .

L i n e3 1 6d o e st h i s .W h e nS = 3 9 ,t h ea r r o w h a sm o v e d3 9 s p a c e sa n di s a t t h e

o t h e rs i d e o ft h es c r e e n .S i s s e tb a c kt o 0 m e a n i n gt h a tt h ed i a m o n di s a l l o w e dt o

s h o o ta g a i n .( T h e a r r o ww a se r a s e di n l i n e3 1 5 ,a n ds i n c en o n e wa r r o w h a sb e e n

w r i t t e n ,t h es c r e e ni s e m p t yo f a r r o w s . )

T h eT a r g e t sA r eH e a r t s

A d dt h e s el i n e s :

3 0 G O S U B4 0 0

4 0 0 R E M H E A R T S4 0 5 F O RL = l T O 2 0

4 1 0 J = 1 0 2 4+ I N T ( R N D ( 1 ) * 2 3 + 1 ) * 4 04 2 0 I = I N T ( R N D ( 1 ) * 3 6 + 1 )4 3 0 P O K EI + J , 8 3

4 5 0 N E X TL

4 9 9 R E T U R N

S a v ea n dt h e nr u ni t .

T h ea r r o w sh i t t h e h e a r t sa n de r a s et h e m .

2 0 1

Page 216: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 216/306

P o p p i n gt h eT a r g e t s

A d dt h i sl i n e :

3 2 5 I F P E E K ( X ) = 8 3T H E NS = 0 : P O K EX , 9 1 : R E T U R N

P E E Kt o s e ei f t h ea r r o wi s a b o u tt o h i t a t a r g e t .

P E E K ( X )t e l l st h en u m b e ro f t h e c h a r a c t e ra t t h e s p o tt h ea r r o wi s a b o u tt o m o v e

o n t o .I f t h e s p o th a sn u m b e r8 3 ,i t i s a h e a r t .T h e np o pi t b y P O K E i n ga c r o s s

t h e r e .S e tS e q u a lt o 0 , b e c a u s et h a ta r r o wi s a l l f i n i s h e dm o v i n g .

A s s i g n m e n t2 8 B :

1 . Y o uc a nc h a n g et h e" C u p i d " p r o g r a mi n m a n yw a y s .C h a n g et h ec h a r a c t e r s

t h a ta r e u s e d .C h a n g ec o l o r s .C h a n g et h ec o l u m nw h i c ht h ed i a m o n dm o v e s

i n .

2 . A d da l a s e rs o u n dt h a ts t a r t sw h e nt h ea r r o wi s s h o ta n ds t o p sw h e nt h ea r r o w

e n d si t s f l i g h t .

3 . W h yd o e st h ed i a m o n dd o d g e a r o u n dw h i l et h ea r r o wf l i e s ?I t o n l ym a k e s

s e n s ei f t h eh e a r t sa r es h o o t i n gb a c ka t t h e t h ed i a m o n d !A d dm i s s i l e st h a tt r y

t o h i t t h ed i a m o n d .

2 0 2

Page 217: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 217/306

I n s t r u c t o rN o t e s2 9 . M u s i c

T h i sl e s s o nc o n t i n u e st h e i n t r o d u c t i o no f S I Dc h i pf e a t u r e sw i t ha p p l i c a t i o n st o

m a k i n gm u s i c .

R e v i e wt h e l e s s o no n s o u n de f f e c t s .D A T As t a t e m e n t sa r eu s e da n dm a ya l s on e e d

t o b e r e v i e w e d .

W ee x a m i n et h eA D S Rp a r a m e t e r s( a t t a c k ,d e c a y ,s u s t a i n ,a n dr e l e a s e )i n s o m e

d e t a i l .T h eA D S Rp a r a m e t e r sd e f i n e al o u d n e s se n v e l o p e ,o r c o n t o u r ,f o rt h e

d u r a t i o no f t h en o t e .

E a c hp a r a m e t e ri s o n en y b b l e( f o u rb i t s )i n l e n g t h ,a n ds o t w op a r a m e t e r sc a n

s h a r eo n eS I Dc h i pr e g i s t e r( o n e b y t eo r e i g h tb i t s ) .A a n dD s h a r eo n er e g i s t e r ,S

a n dR s h a r ea n o t h e r .

T h i si s h o wi t i s d o n e .A n y b b l ei s a n u m b e rf r o m0 t o 1 5 .M e m o r yi s s t o r e da s

b y t e s( a n u m b e rf r o m0 t o 2 5 5 ) .S o e a c hb y t eh o l d se x a c t l yt w on y b b l e sa n dc a n

b e r e p r e s e n t e da s 1 6 * H + L w h e r eH i s t h eh i g hn y b b l ea n dL i s t h el o w

n y b b l e .

T h r e eo f t h eA D S Rp a r a m e t e r sa r et i m ev a l u e s( A ,D , R ) .T h eS , s u s t a i n ,i s a v o l

u m e ,o r l o u d n e s s ,v a l u e .A t a b l eo f t i m ev a l u e sf o rA , D , a n dR i s g i v e ni n t h i s

l e s s o n .N o t et h a tt h et i m ei s n o tp r o p o r t i o n a lt o t h ep a r a m e t e rv a l u e .A v a l u eo f 5

g i v e sa n a t t a c kr i s et i m eo f 0 . 0 5 6s e c o n d s ,b u ta v a l u eo f 1 0 g i v e s0 . 5s e c o n d s .I t ' s

p o s s i b l et o h a v et i m e su p t o 2 4 s e c o n d s .S u c hl o n gt i m e sa r en o tu s e f u li n o r

d i n a r ym u s i cb u t c a nb e u s e f u li n c r e a t i n gs o u n de f f e c t s .

W er e f e rt h er e a d e rt o t h eC o m m o d o r e6 4 U s e r ' sG u i d ef o rt w oo f t h em o s ta d -

v a n c e df e a t u r e so f S I D : t h ep r o g r a m m a b l ef i l t e ra n dt h ef a c tt h a tv o i c e 3c a nb e

u s e dt o c o n t r o ls o m ef e a t u r e s o fv o i c e s1 a n d2 , f o re x a m p l e ,t h e f r e q u e n c y ,f o r

v i b r a t og l i s s a n d o .

2 0 3

Page 218: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 218/306

S I Dc a na l s oa c c e p ta u d i of r o m a ne x t e r n a ls o u r c e( s u c ha s a t a p er e c o r d e r ) ,p r oc e s si t w i t ht h ef i l t e r ,a n dt h e na d di t t o t h ei n t e r n a ls o u n d .T h eo u t p u t c a nb e r e

r e c o r d e d ;y o uc a nb u i l du p a r i c hp o l y p h o n i cp i e c ei n t h i sw a y .

Q u e s t i o n s :

1 . W h a tk i n do f s o u n dw i l ly o ug e ti f y o us e tb o t ht h ea t t a c ka n dd e c a yt o t h e

v a l u e2 , a n ds u s t a i na n dr e l e a s et o 0 ?

2 . H o wd o y o us t o r et h ep i t c ha n dl e n g t ho f e a c hn o t eo f m u s i ci n t h ep r o g r a m ?

3 . H o wd o y o up u tt h ea t t a c ka n dd e c a yn u m b e r si n t ot h es a m eP O K Es t a t e m e n

4 . H o wm a n yv o i c e sd o e sS I Dh a v e ?

5 . H o ww o u l d y o uc h a n g et h ep r o g r a mt o u s ev o i c e 2 i n s t e a do f v o i c e1 ? W o u l di t

s o u n dt h es a m e ?

2 0 4

Page 219: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 219/306

!

L e s s o n2 9 . M u s i c

i G o b a c ka n dr e v i e wt h e" S o u n dE f f e c t s "l e s s o n( l e s s o n1 9 ) .I t t e l l sa l o ta b o u tt h e

S I D s o u n dc h i p .A l s or e v i e wD A T Ai n l e s s o n1 8 .

S I DP l a y sa T u n e

1 0 R E M R O WY O U RB O A T

1 2 C = 5 4 2 7 2 : R E MB A S EA D D R1 5 F O RI = C T OC + 2 4 : P O K E C , 0 : N E X T2 0 P O K E C + 5 , 9 : P O K E C + 6 , 0 : R E MA D S R3 0 P O K E C + 2 4 , 1 5 : R E M V O L U M E4 0 R E A DH , L , D : R E M G E T N O T E

5 0 I F H < 0 T H E NP O K EC + 2 4 , 0 : E N D

6 0 P O K EC + 1 , H : P O K E C , L : R E M P I T C H7 0 P O K EC + 4 , 3 3 : R E MS T A R T N O T E8 0 F O RT = l T O D : N E X T : R E MH O L D N O T E

9 0 P O K EC + 4 , 3 2 : R E ME N D N O T E

9 5 G O T O4 01 0 0 R E ME A C HL I N EH O L D ST W ON O T E S

1 0 5 R E M N O T E :H , L , D

1 1 0 D A T A 1 6 , 1 9 5 , 7 5 0 , 1 6 , 1 9 7 , 7 5 01 2 0 D A T A1 6 , 1 9 5 , 5 0 0 , 1 8 , 2 0 9 , 2 5 01 3 0 D A T A2 1 , 3 1 , 7 5 0 , 2 1 , 3 1 , 5 0 01 4 0 D A T A1 8 , 2 0 9 , 2 5 0 , 2 1 , 3 1 , 5 0 01 5 0 D A T A2 2 , 9 6 , 2 5 0 , 2 5 ,3 0 , 1 5 0 0

1 6 0 D A T A3 3 , 1 3 5 , 2 5 0 , 3 3 , 1 3 5 , 2 5 01 7 0 D A T A 3 3 , 1 3 5 , 2 5 0 , 2 5 ,3 0 , 2 5 01 8 0 D A T A2 5 , 3 0 , 2 5 0 , 2 5 , 3 0 , 2 5 01 9 0 D A T A2 1 , 3 1 , 2 5 0 , 2 1 ,3 1 , 2 5 0

2 0 0 D A T A2 1 , 3 1 , 2 5 0 , 1 6 , 1 9 5 , 2 5 02 1 0 D A T A1 6 , 1 9 5 , 2 5 0 , 1 6 , 1 9 5 , 2 5 0

2 2 0 D A T A2 5 , 3 0 , 5 0 0 , 2 2 , 9 6 , 2 5 02 3 0 D A T A2 1 , 3 1 , 5 0 0 , 1 8 , 2 0 9 , 2 5 02 4 0 D A T A 1 6 , 1 9 5 , 1 5 0 0 , - 1 , - 1 ,- 1

S a v et h ep r o g r a mb e f o r er u n n i n g .

2 0 5

Page 220: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 220/306

=

T h eS c a l e

H e r ea r et w oo c t a v e so f t h es c a l e .M o r ea r e i nt h eU s e r ' sG u i d et h a tc a m ew i t h

y o u rc o m p u t e r .

M i d d l e C 1 6 1 9 5

C o n c e r t

H i g h

c

c #D

D #

E

F

F #

G

G #A

A #

B

C

C #

DD #

E

F

F #

GG #AA #

B

C

H I

1 6

1 7

1 8

1 9

2 1

2 2

2 3

2 5

2 6

2 8

2 9

3 1

3 3

3 5

3 7

3 9

4 2

4 4

4 7

5 0

5 3

5 6

5 9

6 3

6 7

L O

1 9 5

1 9 5

2 0 9

2 3 9

3 1

9 6

1 8 1

3 0

1 5 6

4 9

2 2 3

1 6 5

1 3 5

1 3 4

1 6 2

2 2 3

6 2

1 9 3

1 0 7

6 0

5 7

9 9

1 9 0

7 5

1 5

2 0 6

Page 221: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 221/306

T h eT h r e eV o i c e so f S I D

' S I Dc a np l a yt h r e ei n s t r u m e n t sa t o n c e ,e a c hd i f f e r e n tf r o mt h eo t h e r s .Y o un e e d

_ t o P O K Ei n f o r m a t i o ni n t h er e g i s t e r so f e a c hv o i c ey o uu s e .W ew i l ln o td e m -

l o n s t r a t e t h e t h r e e v o i c e sh e r e ,b u tg i v ey o ut h er e g i s t e ra d d r e s s e s :

R e g i s t e rA d d r e s s e s

B a s ea d d r e s si s 5 4 2 7 2 .

A d dt h e s er e g i s t e ra d d r e s s e st o t h eb a s ea d d r e s s :

R e g i s t e r

L OH I

P u l s el o w

P u l s eh i g h

W a v e f o r m

A t t a c k - D e c a y

S u s t a i n - R e l e a s e

V o l u m e( l o u d n e s s )

1

0

1

2

3

4

5

6

2 4

V o i c e

2

7

8

9

1 0

1 1

1 2

1 3

3

1 4

1 5

1 6

1 7

1 8

1 9

2 0

C o n t e n t s

0 t o 2 5 5

0 t o 2 5 5

0 t o 2 5 5

0 t o 1 5

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

1 6 * ( 0t o 1 5 )+ ( 0 t o 1 5 )

1 6 * ( 0t o 1 5 )+ ( 0 t o 1 5 )

0 t o l 5

A t t a c k - D e c a y - S u s t a i n - R e l e a s e

S o m er e g i s t e r sa r es p l i ti n t ot w ou s e s .

A t t a c ka n dd e c a ys h a r eo n er e g i s t e r .W h yd o n ' tt h e yt r a m p l ee a c ho t h e r ' sf e e t ?

W e l l , a t t a c k s t a y s i nt h ea t t i c ,d e c a yi n t h ec e l l a r( m e a n i n g ,m u l t i p l yt h ea t t a c k

n u m b e rb y 1 6 ,t h e na d d o nt h ed e c a yn u m b e r ) .

L i k e w i s e ,s u s t a i na n dr e l e a s es h a r ea n o t h e rr e g i s t e r .

A d d :

1 6 I N P U T" A T T A C K - D E C A Y< E A C H0 T O 9 > " ? A , D

1 7 I N P U T " S U S T A I N< 0 T O 1 5 > " ; S1 8 I N P U T" R E L E A S E< 0 T O 7 > " ; R2 0 P O K EC + 5 , 1 6 * A + D : P O K EC + 6 , 1 6 * S + R8 0 F O RT = l T O D * , 5 : N E X TT : R E MA T T A C K , D E C A Y , S U S T A I N

T I M E

9 2 F O RT = l T O D * . 3 : N E X T T : R E M R E L E A S E T I M E

2 0 7

Page 222: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 222/306

S a v e ,t h e nr u n .

N o wy o uc a np l a yt h es a m et u n es o u n dw i t hd i f f e r e n ti n s t r u m e n t s .

T r yt h e s ec o m b i n a t i o n s :

A

2

9

9

2

0

D

2

9

9

2

0

S

0

0

1 5

3

1 5

R

0

0

1

7

0

T r yo t h e rc o m b i n a t i o n s .C h a n g el i n e s7 0 a n d9 0 t o h a v eo t h e rw a v e f o r m s( s e et h e

" S o u n dE f f e c t s "l e s s o n )a n dt r yt h e mw i t hd i f f e r e n tA D S Rv a l u e s .

A s t h e N o t eG r o w sO l d e r

W h e nt u r n e do n ,t h en o t er i s e st o f u l ll o u d n e s s .H o wl o n gi t t a k e st o g e t t h e r ei s

c o n t r o l l e db y t h ea t t a c kn u m b e r .T h en u m b e r0 m e a n sa c l i c ks t a r tw h i l e8 g i v e s a

v e r yg r a d u a ls t a r t .A f t e rg e t t i n gt o f u l ll o u d n e s s ,t h en o t ed e c a y st o i t s s u s t a i n

l o u d n e s s .H o wl o n gi t t a k e st o d e c a yi s c o n t r o l l e db y t h ed e c a yn u m b e r .O f

c o u r s e ,i f t h es u s t a i nn u m b e r ,S , i s 1 5 ,t h en o t ed o e sn o td e c a ya t a l l !

T h es u s t a i nn u m b e rt e l l sh o wl o u d( c o m p a r e dt o t h em a x i m u ml o u d n e s s ) t h en o t e

w i l ls t a yu n t i lt u r n e do f f ;1 5 i s l o u d ,0 i s o f f .

W h e nt h en o t ei s t u r n e do f f ,i t d i e sa w a yt o z e r ol o u d n e s si n a t i m ec o n t r o l l e db y

t h er e l e a s en u m b e r .L i n e9 2 i n t h ep r o g r a mg i v e st h en o t et i m et o d i ea w a y .

W i t h o u tl i n e9 2 ,t h e n e x tn o t ew o u l ds t a r tb e f o r et h ef i r s td i e da w a y . B u ti f y o u

d o n o ts t a r ta n o t h e rn o t e( f o re x a m p l ei n a s o u n de f f e c t ) ,y o uc a nd o o t h e r

c o m p u t i n gw h i l et h es o u n dc o n t i n u e st o d i ea w a y !A l a s e r - s h o ts o u n dc a ns l o w l y

d i ea w a yw h i l et h ec o m p u t e rm o v e sg r a p h i c sa r o u n d .

2 0 8

Page 223: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 223/306

H e r ea r et h e t i m e sf o ra t t a c k ,d e c a y ,a n dr e l e a s e :

N u m b e r

0

1

2

3

4

5

6

7

89

1 0

1 1

1 2

1 3

1 4

1 5

A t t a c k

2 m s

8 m s

1 6 m s

2 4 m s

3 8 m s

5 6 m s

6 8 m s

8 0 m s

1 0 0m s2 5 0m s

5 0 0m s

8 0 0m s

1 s

3 s

5 s

8 s

D e c a ya n d

R e l e a s e

6 m s

2 4 m s

4 8 m s . ,

7 2 m s

1 1 4m s

1 6 8m s

2 0 4m s

2 4 0m s

3 0 0m s7 5 0m s

1 . 5s

2 . 4s

3 s

9 s

1 5 s

2 4 s

T h ea b b r e v i a t i o nm sm e a n sm i l l i s e c o n d , o ro n et h o u s a n d t ho f as e c o n d .S o 5 0 0

m s i s h a l fa s e c o n d .

A s s i g n m e n t2 9 :

1 . C h a n g et h e" R o wY o u rB o a t "p r o g r a mt o p l a ya n o t h e rt u n e .

2 . C h a n g et h e" R o wY o u rB o a t "p r o g r a mt o l e tt h eu s e rp i c k t h ew a v e f o r m .

3 . W r i t ea n e l e c t r i co r g a n p r o g r a m .U s et h et o pr o wo f t h ek e y b o a r da s t h eo r g a n

k e y s .L e t t h eu s e rp i c ks t o p s o fd i f f e r e n tk i n d so f s o u n d s .

2 0 9

Page 224: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 224/306

I n s t r u c t o rN o t e s3 0 - A r r a y sa n dt h e D I MS t a t e m e n t

T h i sl e s s o n i n t r o d u c e sa r r a y sa n dd e s c r i b e st h eD I M ( )s t a t e m e n t .U p t o 2 5 5i n

d i c e s a r ea l l o w e d .

A r r a y s w i t ho n ei n d e xa r ed e s c r i b e df i r s t .T h ea r r a yi t s e l fi s c o m p a r e dt o a f a m i l y

a n dt h ei n d i v i d u a le l e m e n t so f t h ea r r a t yt o f a m i l ym e m b e r s .T h ei n d e xv a l u ei s

t h e" f i r s tn a m e "o f t h em e m b e r .

T w o - d i m e n s i o n a la r r a y sc a nb e c o m p a r e dt o t h en u m b e r so n a c a l e n d a rm o n t h

p a g eo r t h e r e c t a n g u l a r a r r a yo f c e l l so n t h eT Vs c r e e n .

A r r a y s t h e m s e l v e sa r en o tt o od i f f i c u l ta c o n c e p t .T h et r i c ki s t o s e eh o wt h e y

h e l pi n p r o g r a m m i n g .T h e r ei s a l a r g ev a r i e t y o fu s e sf o ra r r a y s ,a n dm a n yd o n o t

s e e mt o f a l li n t or e c o g n i z a b l ec a t e g o r i e s .

Y o uc a nu s et h e mt o s t o r el i s t so f i n f o r m a t i o n .C o n n e c t e dl i s t sa l s oc a no c c u r .T h e

t e l e p h o n en u m b e rp r o g r a mu s e s t w o - l i n ea r r a y s :o n ef o rn a m e s ,t h e o t h e rf o r

n u m b e r s .T h e ya r ei n d e x e dt h es a m e ,s o a s i n g l ei n d e xn u m b e rc a nr e t r i e v eb o t h

t h en a m ea n dt h en u m b e rt h a tg o e sw i t hi t .

A n o t h e rg e n e r a lu s eo f a r r a y si s t o s t o r en u m b e r s w h i c hc a n n o tn e a t l yb e o b

t a i n e df r o m a ne q u a t i o n .A n e x a m p l ew o u l db e t h el e n g t hi n d a y so f t h e1 2

m o n t h s .

G a m e so f t e nu s ea r r a y st o s t o r ei n f o r m a t i o na b o u tt h ep l a y i n gb o a r d .

I f y o uf o r g e tt o D I M e n s i o na n a r r a y b e f o r eu s e ,t h eB A S I Ci n t e r p r e t e rg i v e si t a

D I M e n s i o no f 1 0 .I f y o ut r yt o u s ea n e l e m e n tl a r g e rt h a nt h a ta s s i g n e dt o t h e

a r r a y ,t h e? B A DS U B S C R I P TE R R O RI N X Xm e s s a g ei s p r i n t e d .

2 1 0

Page 225: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 225/306

Page 226: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 226/306

L e s s o n3 0 . A r r a y sa n dt h e D I MS t a t e m e n t

M e e tt h eA r r a y F a m i l y

2 2 F $ ( 0 ) = M D A D "2 4 F $ ( 1 ) = " M O M M2 6 F $ ( 2 ) = " K A R E N I

E a c hm e m b e ro f t h ef a m i l yi s a v a r i a b l e .T h eF $ f a m i l ya r es t r i n g v a r i a b l e s .

H e r ei s a f a m i l yo f n u m e r i cv a r i a b l e s :

3 5 N ( 0 ) = 4 33 7 N ( l ) = 1 33 9 N ( 2 ) = 04 1 N ( 3 ) = 0

T h ef a m i l yh a sa " l a s tn a m e "l i k eA ( )o r B $ ( ) .E a c hm e m b e rh a sa n u m b e ri n ( )

f o ra " f i r s tn a m e . "T h ea r r a ya l w a y ss t a r t sw i t ht h ef i r s tn a m e0 .

I n s t e a do f f a m i l yw e s h o u l ds a ya r r a y .

I n s t e a do f f i r s tn a m e w es h o u l ds a y

i n d e xn u m b e r ,o r s u b s c r i p t .

2 1 2

Page 227: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 227/306

T h e D I M () S t a t e m e n t R e s e r v e sB o x e s

W h e nt h e a r r a yf a m i l yg o e st o a m o v i e ,t h e ya l w a y sr e s e r v es e a t sf i r s t .T h e yu s ea

D I Ms t a t e m e n tt o d o t h i s .

T h eD I Ms t a t e m e n tt e l l st h ec o m p u t e rt o r e s e r v ea r o wo f b o x e sf o rt h ea r r a y .

D I Ms t a n d sf o rD I M e n s i o n ,w h i c hm e a n ss i z e .

1 8 d i mA ( 3 )3 0 D I MB ( 7 ) , B $ ( 4 )

L i n e 1 8s a v e s f o u rm e m o r yb o x e s ,o n ee a c hf o rt h ev a r i a b l e sA ( 0 ) ,A ( l ) ,A ( 2 ) ,a n d

A ( 3 ) .T h e s eb o x e sa r ef o rn u m b e r s a n dc o n t a i nt h en u m b e r0 t o s t a r tw i t h .

L i n e3 0 r e s e r v e s e i g h tb o x e sf o rt h eB ( )a r r a ya n df i v ef o rt h es t r i n ga r r a y B $ ( )

T h eb o x e sn a m e dB $ ( 0 )t h r o u g hB $ ( 4 )a r ef o r s t r i n g sa n da r ee m p t yt o s t a r tw i t h .

R u l e :P u tt h eD I M ( )s t a t e m e n te a r l yi n t h ep r o g r a m ,b e f o r e t h e a r r a yi s u s e di n

a n yo t h e rs t a t e m e n t .

M a k i n ga L i s t

E n t e r :

1 0 R E M+ + I NA R O W+ +3 0 D I MA $ ( 4 )3 5 P R I N T" { C L R } { 2 D O W N }E N T E RA W O R D{ D O W N } "4 0 F O RN = 0T O 4

4 5 I FN > 0T H E NP R I N T " A N O T H E R{ D O W N } "5 0 I N P U T A $ ( N )5 5 P R I N T

6 0 N E X TN1 0 0 P R I N T" I N A R O W{ 2 D O W N } "1 1 0 F O R1 = 0 T O 4

1 2 0 P R I N TA $ ( I ) ; T A B ( 1 0 ) ; I1 3 0 N E X TI

S a v ea n dr u n .

Y o uc a nu s ea m e m b e ro f t h ea r r a yb y i t s e l f .L o o ka t t h i sl i n e :

4 0 B $ ( 2 ) = " Y E L L O WS U B M A R I N E "

2 1 3

Page 228: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 228/306

O r y o uc a n u s et h e a r r a yi n a l o o p .L i n e s5 0 a n d1 2 0i n t h ep r o g r a m" I na R o w "a r ei n l o o p sw h e r et h ei n d e x( N o r I ) k e e p sc h a n g i n g .

M a k i n gT w oL i s t s

E n t e r :

1 0 R E M P H O N E L I S T3 0 D I M N A M E $ ( 2 0 ) , N U M B E R $ ( 2 0 )3 5 1 = 0

4 0 P R I N T " { C L R } { D O W N J E N T E R D A T A { D O W N } "5 0 I N P U T { S H I F T - S P A C E } " N A M E " ; N $5 5 I F N $ = " E N D "T H E NE N D5 6 N A $ ( I ) = N $6 0 I N P U T " N U M B E R " ; N U $ ( I )6 5 P R I N T7 0 1 = 1 + 1 : G O T O5 0

R u n .P r e s s t h eR U N / S T O Pk e yt o s t o pt h ep r o g r a m .S a v et o t a p eo r d i s k .

2 1 4

Page 229: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 229/306

Page 230: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 230/306

_ _

2 0 1 R E MU P D A T EA T T A C K E DS Q U A R E S

2 0 2 R E M2 1 0F O RL = l T O82 1 5 B ( I , L ) = B ( I , L ) + D

2 2 0B ( L , J ) = B ( L , J ) + D2 2 5 N E X TL

5 0 0 R E M5 0 1R E M D I A G O N A L5 0 2 R E M5 1 0 F O RK = lT O 85 1 5 X = I + K5 2 0 I F X > 8T H E N5 3 05 2 2 Y = J + K : I FY > 8T H E N5 2 5

5 2 3 B ( X , Y ) = B ( X , Y ) + D5 2 5 Y = J - K : I F Y < 1 T H E N5 3 05 2 6 B ( X , Y ) = B ( X , Y ) + D

5 3 0 X = I - K5 3 5 I F X < 1 T H E N5 9 05 4 0 Y = J + K : I FY > 8T H E N5 5 0

5 4 5 B ( X , Y ) = B ( X , Y ) + D5 5 0 Y = J - K : I FY < 1 T H E N5 9 0

5 5 5 B ( X , Y ) = B ( X , Y ) + D5 9 0 N E X TK5 9 5 B ( I , J ) = Q5 9 9 R E T U R N

6 0 0 R E M6 0 1 R E MG O B A C K

6 0 2 R E M

6 1 0 R ( I ) = 06 1 2 I = Q N6 1 5 I F 1 = 0T H E NE N D

6 2 0 J = R ( I )6 3 0 D = - 1 : Q = 0 : G O S U B2 0 0

6 4 0 Q N = Q N - 1

6 9 0 R E M G O S U B9 0 06 9 9 R E T U R N

7 0 0 R E M7 0 1 R E M G OA H E A D

7 0 2 R E M7 1 0 R ( I ) = M : J = M7 1 5 Q N = Q N + 1

7 2 0 D = 1 : Q = - 17 3 0 G O S U B2 0 0

7 3 5 N M = N M + 17 4 0 I F Q N = 8T H E N G O T O8 0 07 8 0 1 = 1 + 1

7 8 5 G E TK B $7 8 6 I FK B $ = "" T H E N G O S U B9 0 0

7 9 9 G O T O1 1 5

8 0 0 R E M

2 1 6

Page 231: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 231/306

8 0 1 R E MS O L U T I O N

8 0 2 R E M

8 1 0 N A = N A + 1

8 1 4 N S = N S + 18 1 5 G O S U B9 0 0

8 6 0 G O S U B6 1 2

8 9 9 G O T O1 1 5

9 0 0 R E M

9 0 1 R E MD I S P L A Y

9 0 2 R E M9 0 5 P R I N T" { C L R } "

9 1 0 F O RX = l T O 8

9 1 5 F O RY = l T O89 1 9 P R I N TL E F T $ ( D $ , 5 + 2 * X ) ;9 2 0 P R I N TT A B ( 2 + 2 * Y ) ;9 2 5 B B = B ( X , Y )

9 3 0 I F B B = - 1T H E N P R I N T" O " ;9 4 0 I F B B >0 T H E NP R I N T" . " ;

9 5 0 I F B B =0 T H E N P R I N T" . " ;

9 5 5 I F B B < - 1T H E NP R I N TX , Y ; : E N D9 6 0 N E X TY : N E X TX9 8 0 P R I N T " { H O M E } { D O W N }S O L U T I O N S " ; N S ; " M O V E S " ; N M9 9 9 R E T U R N1 0 0 0D I M R ( 8 ) , B ( 8 , 8 )1 0 1 0P R I N T" { C L R } "1 0 2 0I = 1 : Q N = 0 : N S = 0

1 0 3 0D $ = " { H O M E } { 2 5D O W N } "1 0 4 0P R I N T " { C L R } { 3D O W N } P R E S ST H E S P A C E B A RT O S E E

T H EB O A R D "

1 0 5 0F O RT = l T O 2 0 0 0 : N E X T1 9 9 9G O T O1 0 0

A s s i g n m e n t3 0 :

1 . W r i t ea p r o g r a mt h a ts t o r e st h en u m b e ro f d a y si n e a c hm o n t hi n a n a r r a y .

T h e nw h e ny o ua s kt h e u s e rt o e n t e r an u m b e rf r o m1 t o 1 2 ,i t p r i n t so u tt h e

n u m b e ro f d a y si n t h a tm o n t h .

2 . W r i t ea p r o g r a ms o t h a tt h ec o m p u t e rp l a y s t h e c a r dg a m e W a ra g a i n s tt h eu s e r .H a v ea n a r r a yh o l dt h e5 2 c a r d si n t h ed e c k .D e a lt h e ma t r a n d o mi n t o

t w oa r r a y s ,o n ef o re a c hp l a y e r .I n e a c ht u r n ,e a c hp l a y e rp u l l st h e c a r d sf r o m

h i so r h e rd e c ki n o r d e r .I f t h e c a r d sp l a y e db y u s e ra n dc o m p u t e rd o n ' tm a t c h ,

t h e ya r eb o t hp u ti n t h eb o o t yp i l e .I f t h e yd o m a t c h ,t h e r ew i l lb e a b a t t l e .I n

t h eb a t t l e ,b o t ho p p o n e n t sp l a y t h e n e x t c a r do n t h e i rr e s p e c t i v ep i l e s .T h eh i g h

c a r dw i n st h ew h o l eb o o t yp i l e .

2 1 7

Page 232: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 232/306

3 . W ew r o t eE i g h tQ u e e n sf o ra s t a n d a r d8 X 8c h e s s b o a r d .C h a n g et h ep r o g r a m

s o t h a tt h eu s e rc a n c h o o s ea n ys i z eb o a r d .

4 . C h a n g eE i g h tQ u e e n si n t o" S u p e r Q u e e n s . "E a c hm o v e sl i k ea q u e e n a n dl i k e

a k n i g h t .A r et h e r ea n ys o l u t i o n s ?

2 1 8

Page 233: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 233/306

I n s t r u c t o rN o t e s3 1 . S p r i t e s

T h eV I Cc h i pi n t h eC o m m o d o r e6 4 c o n t r o l st h ev i d e od i s p l a y si n c l u d i n ge i g h t

s p r i t e s( p o w e r f u lb i t m a p p e dg r a p h i c so b j e c t s ,2 4 b i t sw i d ea n d2 1 b i t sh i g h ) .

T h i sl e s s o ng i v e st h e s t u d e n ta p r o g r a mi n w h i c ht h es p r i t et h a ti s d r a w no n t h e

s c r e e ni s P O K E di n t om e m o r yw i t h o u tt h ed r u d g e r yo f d e t e r m i n i n gb i tp a t t e r n s

a n dc h a n g i n gt h e mt o d e c i m a ln u m b e r s .

T h es p r i t ec a nb e c o l o r e dw i t ho n eP O K Ea n dm o v e dt o a n o t h e rs p o to n t h e

s c r e e nw i t ho n et o t h r e em o r e P O K E s .E a c hs p r i t ei s t o l dw h i c hp i c t u r et o d i s p l a y

b y a p o i n t e ru p d a t e dw i t ha s i n g l eP O K E .M a n yp i c t u r e sc a nb e s t o r e da h e a do f

t i m ea n dr a p i d l yd i s p l a y e do n ea f t e ra n o t h e rb y t h es a m es p r i t e .C o n v e r s e l y ,s e v

e r a l s p r i t e sc a nd i s p l a yt h es a m ep i c t u r ei n d i f f e r e n tc o l o r sa n dd i f f e r e n ts p o t so n

t h e s c r e e na t t h es a m et i m e .

T h o s ep o r t i o n so f a s p r i t ei n w h i c ht h eb i t i s 0 a r e t r a n s p a r e n t ,s h o w i n gw h a t e v e

o b j e c t s ( o t h e rs p r i t e so r s c r e e ng r a p h i c s ) a r eb e h i n dt h e m .T h ef r o n t m o s ts p r i t eo f

a n o v e r l a p p i n gp a i ri s t h eo n ew i t ht h e l o w e s ts p r i t en u m b e r .F o re a c hs p r i t e ,t h e

p r o g r a m m e rc a n c h o o s ew h e t h e ri t p a s s e si n f r o n to f o r b e h i n do b j e c t si n t h e

s t a t i cs c r e e nd i s p l a y .

E a c hs p r i t ec a nb e e x p a n d e dt o d o u b l es i z ei n t h e h o r i z o n t a lo r v e r t i c a l ( o rb o t h )

d i m e n s i o n s .M u l t i c o l o r e ds p r i t e sc a nb e m a d e( t h r e e c o l o r sp l u sb a c k g r o u n d ) ,

t h e ya r en o te x p l a i n e di n t h i sb o o k .

T h e r ea r et w or e g i s t e r s f o rr e c o r d i n gc o l l i s i o n si n v o l v i n gs p r i t e s .O n er e g i s t e r

r e c o r d si f a s p r i t eh a sc o l l i d e dw i t ha n yb a c k g r o u n d d r a w i n go n t h es c r e e n .T h e

o t h e rr e c o r d sw h i c hs p r i t e sh a v ec o l l i d e dw i t ho t h e rs p r i t e s .T h e s er e g i s t e r sk e e p

a r e c o r do f t h ec o l l i s i o n ,e v e ni f t h es p r i t e sh a v em o v e do f fa n da r en o l o n g e r

o v e r l a p p i n g ,u n t i lt h er e g i s t e ri s r e a d w i t ha P E E K .T h e nt h er e g i s t e ri s c l e a r e dt o

0 , n o c o l l i s i o n s .

2 1 9

Page 234: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 234/306

Q u e s t i o n s :

1 . H o wd o y o ut e l ls p r i t e0 w h i c hp i c t u r et o s h o w ?

2 . H o wd o y o ut e l ls p r i t e0 t o m o v et o t h e c e n t e ro f t h e s c r e e n ?

3 . H o wd o y o uc o l o rs p r i t e1 r e d ?

4 . H o wd o y o ut e l ls p r i t e2 t o g r o ww i d e r ?

5 . W h a td o e st h e" s p r i t eh i t ss p r i t e ? "r e g i s t e rc o n t a i ni f s p r i t e3 a n ds p r i t e5 a r e

o v e r l a p p i n g ?

2 2 0

Page 235: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 235/306

L e s s o n3 1 . S p r i t e s

T h eV I Cc h i pi n t h ec o m p u t e rc o n t r o l se i g h ts p r i t e s .

A s p r i t ei s a l i t t l ep i c t u r e t h a tm o v e so n t h es c r e e n .Y o ud r a wt h ep i c t u r ea n dp u t

i t i n m e m o r yb e f o r e h a n d .S p r i t e sl e t y o up u t p o w e r f u lm o v i n gg r a p h i c si n y o u r

p r o g r a m s .

S p r i t e Z e r o ,O b e yO u rW i s h e s !

1 0 R E M S P R I T E

1 5 P R I N T" { C L R H B L K } * 1: R E M B L A C K L E T T E R S1 6 P O K E 5 3 2 8 1 , 1 : R E M W H I T E S C R E E N2 0 R E M S E TU P V I C2 2 V = 5 3 2 4 8 : R E M V I CB A S EA D D R E S S

2 3 R E M P I C T U R E2 4 B = 2 0 0 : R E M B L O C K N U M B E R2 6 P O K E2 0 4 0 , B: R E M P U TI N B L O C K2 0 02 8 G O S U B2 0 0 : R E M S T O R E P I C T U R E3 0 R E M E N A B L E S P R I T E03 2 P O K E V + 2 1 , 1: R E M T U R NO N S P R I T E03 4 P O K EV + 3 9 , 0: R E M B L A C KC O L O R4 0 R E M U S E T H ES P R I T E

4 2 F O RP = l T O 2 0 0

4 4 P O K EV + 0 , P : R E M X P O S I T I O N4 5 P O K EV + 1 , P : R E M Y P O S I T I O N

4 9 N E X TP5 0 F O R1 = 7 T O 0 S T E P- 1

5 5 P O K E V + 3 9 , I: R E M A L L C O L O R S

6 0 F O RT = l T O 1 0 0 0 : N E X TT

6 5 N E X TI7 0 P O K E V + 2 9 , 1: R E M F A TS P R I T E

7 1 G O S U B1 0 07 2 P O K EV + 2 3 , 1: R E M F A TA N DT A L L

7 3 G O S U B1 0 07 4 P O K EV + 2 9 , 0: R E M T A L LO N L Y7 5 G O S U B1 0 0

7 6 P O K E V + 2 3 , 0: R E M S M A L LA G A I N7 7 G O S U B1 0 09 0 P O K EV + 2 1 , 0: R E M T U R NS P R I T EO F F

9 6 L I S T 3 0 0 -1 0 0 F O RT = l T O 1 0 0 0 : N E X T T : R E T U R N2 0 0 R E M S T O R E S P R I T E

2 0 1 L = 0 * P R I N T" P L E A S E W A I T "

2 0 2 F O R1 = 0 T O 2 0 : R E A DR $

2 2 1

Page 236: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 236/306

2 0 62 1 0

2 1 5

2 2 02 2 5

2 3 02 8 02 9 9

O t O X J

3 0 1

3 0 2

3 0 33 0 43 0 5

3 0 63 0 73 0 8

3 0 93 1 03 1 1

3 1 23 1 3

3 1 4

3 1 5

3 1 63 1 7

3 1 8

3 1 93 2 0

3 2 13 2 2

F O RJ =

N = 0 : P =

F O RK :

I F D $ :

= 0 T O 2 : S $ = M I D $ ( R $ , J * 8 + 2 , 8 )= 1 2 8

= 1 T O 8 : D $ = M I D $ ( S $ , K , 1 ). • • ♦ • I T H E N N = N + p

P = P / 2 : N E X T KP O K E]N E X T*

B * 6 4 + L , N : L = L + 1J , I s P R I N T" { C L R } 1 1

R E T U R N

P 1 ? M

D A T AD A T A

D A T AD A T AD A T A

D A T AD A T AD A T A

D A T A

D A T A

D A T A

D A T AD A T A

D A T A

D A T A

D A T A

D A T A1

D A T A

D A T A1D A T AJ

D A T A1R E M -

[ * * * * j

1 * *

I * *

I *

i *

i *

1 *

I *

I *

1 * * * 1[ * * * * * * * j

I * * * !i *

1 **

i *

*

* *

* • * *I

B e s u r et o s a v eb e f o r e r u n n i n g .

H o wt o U s et h eS p r i t eP r o g r a m

D r a wy o u ro w np i c t u r ei n t h eD A T As t a t e m e n t sa n de n t e rt h eD A T Al i n e si n t o

t h ep r o g r a m ,l i k et h i s :

L i s tt h ep r o g r a ma n ds e e t h eD A T As t a t e m e n t so n t h es c r e e n .

M o v et h e c u r s o ri n t ot h e r e c t a n g l ed r a w ni n t h eD A T As t a t e m e n t s .E r a s e

t h es t a r st h a ta r ea l r e a d yt h e r e .D r a ww h a t e v e rp i c t u r ey o ul i k e( a

s m i l e yf a c e ? )u s i n gt h e* k e y .

2 2 2

Page 237: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 237/306

T h e nu s et h eG R S Rk e y st o m o v et h ec u r s o rt o l i n e3 0 1a t t h e t o po f t h e

d r a w i n g .T h e np r e s st h eR E T U R Nk e y2 1 t i m e st o e n t e ra l l t h en e w

D A T As t a t e m e n t si n t ot h ep r o g r a m .

T h e nr u nt h ep r o g r a mt o s e ey o u rs p r i t em o v e .

H o wI t W o r k s

T h eV I Cc h i ph a s4 7 m e m o r yb o x e st h a tt e l lt h es p r i t e sw h a tt o d o .B e s i d e st h a t ,

e a c hs p r i t en e e d sa p i c t u r es t o r e di n a b l o c ko f 6 4 b o x e si n m e m o r y ,a n da s p r i t e

p o i n t e rb o xt o t e l lw h i c h6 4 b o x e st o u s e .

L i n e2 2 T h ea d d r e s s e so f V I C ' sb o x e ss t a r ta t 5 3 2 4 8 .

L i n e2 6 T h eb o xa t 2 0 4 0i s t h es p r i t ep o i n t e rf o rs p r i t e0 . I t t e l l si n w h i c hb l o c k

o f 6 4 b o x e ss p r i t e0 w i l lf i n di t s p i c t u r e .B l o c k2 0 0h a sb o x e s1 2 8 0 0t o

1 2 8 6 3 .( 1 2 8 0 0= 6 4 * 2 0 0 ) .

C a r e f u l !U s eo n l yb l o c k s2 0 0t o 2 5 5 .

L i n e3 2 B o xV + 2 1i s t h es p r i t eo n / o f fb o x .P u tn u m b e r0 i n t h eb o xt o t u r no f f

a l l t h es p r i t e s .T h en u m b e r1 t u r n so n s p r i t e0 .

L i n e3 4 B o xV + 3 9h o l d sa c o l o rn u m b e r( 0 t o 1 5 )f o r s p r i t e0 .

L i n e4 4 B o xV h o l d st h ex p o s i t i o n o fs p r i t e0 . T h en u m b e ri s b e t w e e n0 a n d

2 5 5 .N u m b e r sn e a r0 p u tt h es p r i t e o f ft h es c r e e na t t h el e f t .

L i n e4 5 B o xV + lh o l d st h ey p o s i t i o no f s p r i t e0 . N u m b e r sn e a r0 p u ti t o f ft h e

s c r e e na t t h et o p .N u m b e r sn e a r2 5 5p u ti t o f ft h e s c r e e na t t h eb o t t o m .

L i n e2 0 0T h es u b r o u t i n er e a d se a c hD A T Al i n e ,b r e a k si t u p i n t ot h r e eb y t e so f

e i g h t c h a r a c t e r s e a c h ,a n dt h e nl o o k st o s e ew h i c hc h a r a c t e r s a r es t a r s .

T h es t a r st e l lw h i c hb i t sa r eo n e si n b i n a r yn o t a t i o n .S t u d yp a g e s7 2 a n d7 3 i n t h eC o m m o d o r e6 4 U s e r ' sG u i d et o l e a r nm o r ea b o u tm a k i n gb i n a r y

n u m b e r si n t od e c i m a ln u m b e r sf o rs p r i t e s .

2 2 3

Page 238: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 238/306

T w oS t e p st o S p r i t e s

Y o uu s es p r i t e si n t w os t e p s :F i r s ty o ud r a wa n ds t o r ea p i c t u r e .T h e ny o um a k e

V I Cc o l o ri t , t u r ni t o n ,a n dm o v ei t a r o u n d .

L o a dt h e " S p r i t e "p r o g r a m ,t h e nc h a n g ei t .

R e m o v ea l l l i n e s2 0 t o 9 6 a n dl i n e2 0 1 .A d dt h e s el i n e s :

1 0 R E M M A K E P I C T U R E S

3 0 I N P U T " B L O C KN U M B E R " ; B3 5 I FB < 2 0 0 T H E N3 0

4 0 G O S U B2 0 0

9 6 L I S T3 0 02 4 0 P R I N TN ,

2 8 0 N E X TJ : P R I N T : N E X TI

2 9 2 I N P U T" N E X TP I C T U R E" ; A $

H o wt o u s et h ep r o g r a m :

L I S Ti t t o s e et h eb o xm a d eo f D A T As t a t e m e n t s .

D r a wy o u rn e wp i c t u r e .

T h e nr u nt h ep r o g r a ma n de n t e r ab l o c kn u m b e rf r o m2 0 0t o 2 5 5 .T h e

p i c t u r ei s s t o r e di n t h eb l o c k .

A l s o ,t h en u m b e r st h a td r a wt h ep i c t u r e a r es h o w no n t h e s c r e e ns o y o u

c a nc o p yt h e md o w ni f y o uw a n t .Y o uc a np u tt h e s en u m b e r si n D A T A

s t a t e m e n t si f y o uw a n tt o w r i t ea p r o g r a mt h a tu s e st h a tp i c t u r e .

F i n a l l y ,t h eD A T As t a t e m e n t sa r eL I S T e da g a i n s oy o uc a nd r a wa n e w

p i c t u r et o s t o r e i na n o t h e rb l o c k .

Y o uc a ns t o r em a n yp i c t u r e sf o ro n es p r i t et o u s e ,a n dc h a n g e f r o mo n ep i c t u r et o

a n o t h e rb y P O K E i n ga n e wb l o c kn u m b e ri n t h es p r i t ep o i n t e r b o x .( R e m e m b e r

f o rs p r i t e0 t h e p o i n t e ri s i n b o x2 0 4 0 . )C h a n g et h ep i c t u r e sv e r yf a s ta n d y o uc a n

m a k ea m o v i e !

2 2 4

Page 239: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 239/306

A s s i g n m e n t3 1A :

1 . U s e" M a k eP i c t u r e s "t o s t o r ea s m i l e yf a c ei n b l o c k2 0 0 .T h e n d r a wa f r o w n i n

f a c ea n ds t o r ei t i n b l o c k2 0 1 .( T h es m i l ei n 2 0 0i s s t i l lt h e r e . )

T h e nw r i t e ap r o g r a mt o m a k ef i r s tt h es m i l e ,t h e nt h ef r o w n ,s h o wi n t h e

m i d d l eo f t h es c r e e n .( H i n t :U s es p r i t e0 a n dc h a n g ei t s p o i n t e rB i n a l o o p . )

2 . N o wt h a ty o uk n o wh o w ,s t o r es e v e r a l f a c e sa n dw r i t e ap r o g r a mt h a tc h a n g e s

t h ef a c es l o w l yf r o ma b i gs m i l e ,t o a s m a l ls m i l e ,t h e nt o a p u z z l e dl o o k ,t h e n

t o a f r o w n ,t h e nt o a n a n g r yf a c e .

M a n yS p r i t e sa t O n c e

H e r ea r et h eb o xa d d r e s s e sf o ra l l e i g h ts p r i t e s .

S p r i t e

0

1

2

3

4

5

6

7

P o i n t e r

2 0 4 0

2 0 4 1

2 0 4 2

2 0 4 3

2 0 4 4

2 0 4 5

2 0 4 6

2 0 4 7

X

v +0

2

4

6

8

1 0

1 2

1 4

Y

V +1

3

5

7

9

1 1

1 3

1 5

C o l o r

V +3 9

4 0

4 1

4 2

4 3

4 4

4 5

4 6

B i t

V a l u e

1

2

4

8

1 6

3 2

6 4

1 2 8

( V = 5 3 2 4 8 )

Y o ua l r e a d yk n o wh o wt o u s et h ep o i n t e r ,x , y ,a n dc o l o rb o x e sf o rt h e 0s p r i t e .

T h e ya r eu s e di n t h es a m ew a yf o rt h e o t h e rs p r i t e s .

T h eb i tv a l u ef o re a c hs p r i t ei s a n u m b e ru s e di n t h er e g i s t e r sl i s t e db e l o w .

2 2 5

Page 240: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 240/306

R e g i s t e r s : X e x t e n s i o n ?

S p r i t e so n ?

T a l l ?

W i d e ?

B e h i n d b a c k g r o u n d ?

S p r i t eh i ts p r i t e ?

S p r i t eh i tb a c k g r o u n d ?

VVVV

V

VV

+ 1 6

+ 2 1

+ 2 3

+ 2 9

+ 2 7

+ 3 0

+ 3 1

E a c hr e g i s t e ri s a m e m o r yb o xi n t h eV I Cc h i pt h a th o l d st h ea n s w e r st o e i g h t

y e s / n oq u e s t i o n s ,o n e a n s w e rf o re a c hs p r i t e .

T h eb i tv a l u e so f e a c hs p r i t ea r eu s e dt o a n s w e rt h eq u e s t i o n s .E x a m p l e :

3 3 P O K EV + 2 1 , 1 + 4 + 1 2 8 : R E MT U R N S O N S P R I T E S 0 , 2 , A N D7

T h e n :

5 6 P O K EV + 2 1 , 1 + 1 2 8 : R E MT U R N SO F FS P R I T E 2 ( B E C A U S EI T S B I TV A L U E , 4 , I S N ' TT H E R E )

2 2 6

Page 241: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 241/306

R u l e s :

T o a n s w e rn o f o ra l l s p r i t e s ,P O K E0 .

T o a n s w e ry e sf o ro n es p r i t e ,P O K Ei t s b i tv a l u e . ( T h i sa u t o m a t i c a l l ya n

s w e r sn o f o ra l l t h eo t h e rs p r i t e s . )

T o a n s w e ry e sf o rs e v e r a ls p r i t e s ,P O K Et h es u mo f t h e i rb i tv a l u e s .F o r

a l lb i tv a l u e sy o ul e a v eo u t( l i k e 2 ,8 , 1 6 ,3 2 ,a n d6 4 i n l i n e3 3 ) ,t h ea n

s w e ri s n o .

T h e" x e x t e n s i o n ? "r e g i s t e rh e l p sy o um o v ea s p r i t e t ot h er i g h ts i d eo f t h es c r e e n .

I f y o ua n s w e ry e s ,t h e nt h en u m b e r2 5 6i s a d d e dt o t h e p o s i t i o ny o up u ti n t h e

s p r i t e ' sx p o s i t i o nr e g i s t e r .E x a m p l e :

3 5 P O K EV + 0 , 5 0 : R E MP U T S P R I T E0 A T 5 0 H O R I Z O N T A L L Y4 7 P O K EV + 1 6 , 1 : R E M M O V EI T T O 2 5 6 + 5 0 = 3 0 6

2 2 7

Page 242: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 242/306

W a t c hO u t ,T w oS p r i t e sA r eG o i n gt o B u m p !

W h e nt w os p r i t e so v e r l a po n t h es c r e e n ,t h e i rb i tv a l u e sa d d e dt o g e t h e ra p p e a ri n

b o xV + 3 0 ,t h e" s p r i t eh i t s p r i t e ? "r e g i s t e r .E x a m p l e :

8 7 H = P E E K ( V + 3 0 )8 8 P R I N TH

I f 6 i s p r i n t e d ,t h e ny o uk n o wt h a ts p r i t e s1 a n d2 h a v eh i te a c ho t h e rb e c a u s et h e i rb i tv a l u e s2 + 4 a d dt o 6 .

I f a s p r i t eh i t ss o m e t h i n gy o uh a v ed r a w no n t h es c r e e n ,i t s b i t v a l u ei s a d d e dt o

b o xV + 3 1 ,t h e" s p r i t eh i tb a c k g r o u n d ? "r e g i s t e r .

A s s i g n m e n t3 I B :

1 . M a k et w os p r i t e st h a tc a nm o v eh o r i z o n t a l l y .S t a r tt h e ma t o p p o s i t ee n d so f t h e

s c r e e n .W h e nt h e yh i t ,m a k ea c r a s hs o u n d .

2 . M a k ea b u m p e rc a rr i n k .P u ta b o r d e ra r o u n dt h es c r e e n .H a v et w os p r i t e s( d i f

f e r e n tc o l o r s ) f o rb u m p e rc a r s .M a k ee i g h t p i c t u r e s o fc a r s ,g o i n gu p ,d o w n ,l e f t ,

r i g h t ,a n dt o w a r de a c hd i a g o n a l .C o n t r o lt h ec a r sw i t hk e y sf o r" t u r nl e f t "a n d

" t u r nr i g h t . "W h e nt h ec a r sh i t ,t h e yh a v et o b a c ka w a y .

2 2 8

Page 243: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 243/306

I n s t r u c t o rN o t e s3 2 . U s e r - F r i e n d l yP r o g r a m s

T h i sl e s s o ns h o w sh o wt o w r i t ec l e a rp r o g r a m sw h i c hi n t e r a c tw i t ht h e u s e ri n a

f r i e n d l yw a y .

T h e ys h o u l db e c l e a r l ys t r u c t u r e df r o mt h ep r o g r a m m e r ' sp o i n to f v i e wa n dt h e

s p a g h e t t ip r o g r a ms h o u l db e d i s c o u r a g e d .T h i sl e s s o np r e s e n t sa f o r m a tf o rw r i t

i n gp r o g r a m s .W h i l em e t h o d so f i m p o s i n go r d e ro n t h et a s ka r e l a r g e l y am a t t e r

o f t a s t e ,t h em e t h o d su s e dh e r ec a ns e r v et o i n t r o d u c et h ei d e a s .

U s e r - f r i e n d l ym e a n st h a ts c r e e n d i s p l a y sa r ee a s yt o r e a d ,k e y b o a r di n p u ti s

" R E T U R N - k e yf r e e " a sm u c ha s p o s s i b l e ,a n de r r o r sa r et r a p p e d .A s ki f e n t r i e sa r e

o k a y .I f n o t ,g i v ea n o p p o r t u n i t yt o f i x t h i n g s .

I n s t r u c t i o n sa n dh e l ps h o u l d b ea v a i l a b l e .P r o m p t s n e e dt o b e g i v e n .B e g i n n e r s

n e e dc o m p l e t ep r o m p t s , b u te x p e r i e n c e du s e r sw o u l dp r e f e rb r i e fp r o m p t s .

I t i s h a r dt o t e a c ht h e w r i t i n go f u s e r - f r i e n d l yp r o g r a m s .S u c c e s sd e p e n d sm o s t l y

o n t h ea t t i t u d eo f t h ep r o g r a m m e r .T h eb e s ta d v i c ei s t o " t u r nu p y o u ra n n o y a n c

d e t e c t o r st o h i g h "a s y o uw r i t ea n d d e b u gp r o g r a m s .

M o s ty o u n gs t u d e n t sw i l ln o tp r o g r e s sv e r yf a rt o w a r dc o m p l e t e l yf r i e n d l y

p r o g r a m m i n g . T ob e a c q u a i n t e dw i t ht h ed e s i r a b i l i t yo f f r i e n d l yp r o g r a m m i n g

t o u s es o m es i m p l et e c h n i q u e st o w a r da c c o m p l i s h i n gt h a tg o a la r es a t i s f a c t o r y

a c h i e v e m e n t s .

Q u e s t i o n s :

1 . S h o u l dy o u rp r o g r a mg i v ei n s t r u c t i o n sw h e t h e rt h eu s e rw a n t st h e mo r n o t ?

2 . W h a ti s a p r o m p t ? G i v et w oe x a m p l e s .

3 . W h a ti s s c r o l l i n g ?H o wc a ny o uw r i t et o t h e s c r e e nw i t h o u ts c r o l l i n g ?

2 2 9

Page 244: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 244/306

4 . I f y o u w a n tt h e u s e rt o e n t e r as i n g l el e t t e rf r o mt h ek e y b o a r d ,w h a tc o m m a n

i s b e s t( a v o i d su s i n gt h eR E T U R Nk e y ) ?i ?

5 . W h a ti s a ne r r o r t r a p ?H o ww o u l d y o ut r a pe r r o r si f y o ua s k e dy o u ru s e rt o e n -

t e r a n u m b e rf r o m1 t o 5 ?

6 . I n w h a tp a r t o ft h ep r o g r a ma r em o s to f t h eG O S U Bs t a t e m e n t sf o u n d ?

7 . W h yp u tt h e" s t a r t i n gs t u f f "s e c t i o n o ft h ep r o g r a ma t t h ee n do f t h ep r o g r a m

( a th i g hl i n en u m b e r s ) ?

2 3 0

Page 245: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 245/306

Page 246: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 246/306

Page 247: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 247/306

I n f o r m a t i o n P l e a s e

3 8 0 P R I N T" D OY O UW A N TT O S E EI N S T R U C T I O N S ? < Y / N > '

T h i sl e t sa b e g i n n e rs e ei n s t r u c t i o n s ,a n d

l e t so t h e r ss a yn o .

T i ea S t r i n gA r o u n dt h eU s e r ' sF i n g e r

U s ea p r o m p tt o r e m i n du s e r sw h a tc h o i c e st h e yh a v e .

E x a m p l e :< Y / N >w h e r et h ec h o i c ei s

Y f o ry e so r N f o rn o .

B e g i n n e r sn e e dl o n g p r o m p t s .O t h e r

u s e r sl i k es h o r tp r o m p t s .

2 3 3

Page 248: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 248/306

O u c h !M yF i n g e r s H u r t

U s et h eG E Ts t a t e m e n tt o e n t e rs i n g l el e t t e r s .T h i ss a v e sh a v i n gt o p r e s s

R E T U R N .

3 8 0 P R I N T" D OY O U W A N TT O S E E I N S T R U C T I O N S ? < Y / N > "3 8 2 G E TR $ : I F R $ = " "T H E N3 8 23 8 4 I F R $ = " Y " T H E N G O T O6 0 0

D o n ' tG i v et h eU s e ra H e a d a c h e

S c r o l l i n gg i v e sh e a d a c h e s !

Y o u rs c r e e nw i l ls c r o l li f y o uc o n t i n u e

P R I N T i n ga f t e rr e a c h i n gt h eb o t t o mo f t h e

s c r e e n .N e wl i n e s w i l lb e w r i t t e na t t h e

b o t t o mo f t h es c r e e na n do l dl i n e s w i l lb e

p u s h e du p .

T h i si s l i k et h es c r o l l st h eR o m a n su s e d

f o rw r i t i n g .T h e yu n w o u n df r o mt h eb o t

t o ma n dw o u n du p a t t h et o p .

A v o i ds c r o l l i n g .U s eC L R / H O M Ea n d

C R S Rk e y st o p r i n tj u s tw h e r e y o uw a n t .

E r a s eb y p r i n t i n ga s t r i n go f b l a n k st o

t h es a m es p o t .

U s ed e l a y l o o p ss o t h e w r i t i n gs t a y so n

t h es c r e e nw h i l et h e u s e r r e a d si t .

S e tT r a p sf o rE r r o r s

E x a m p l e :A d dt h i sl i n et o t h ea b o v el i n e s :

3 8 6 I F R $ < > I I N "T H E NG O T O3 8 0

2 3 4

Page 249: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 249/306

L i n e3 8 0a s k e df o ro n l yt w oc h o i c e s ,Y o r N . I f s o m eo t h e rk e yi s p r e s s e d ,l i n e

3 8 6s e n d st h e u s e rb a c kt o l i n e3 8 0 .

T r a p sm a k ey o u rp r o g r a m b o m b p r o o fs o t h a tu s e r sw i l lb e u n a b l et o g o o fi t u p !

A s s i g n m e n t3 2 :

1 . M a k ea p r o g r a mt o w r i t ea v e r yl a r g en u m b e r ,5 0 d i g i t s .P i c k t h ed i g i t s a tr a n

d o m .P u ta c o m m ab e t w e e ne a c hs e to f t h r e ed i g i t s .( H i n t :M a k et h ed i g i t so n e

a t a t i m ef r o mR N D ( O )a n dg l u et h e mo n t h ee n do f t h en u m b e r . )

2 . W r i t ea s e c r e tc i p h e rp r o g r a m .T h eu s e rc h o o s e sa p a s s w o r da n di t i s u s e dt o

m a k ea c i p h e ra l p h a b e tl i k et h i s :

I f t h ep a s s w o r di s D R A G O N E T T E ,r e m o v et h er e p e a t e dl e t t e r s ,G E T

D R A G O N E T ,p u ti t a t t h ef r o n to f t h e a l p h a b e ta n dt h er e s to f t h el e t

t e r s a f t e ri t i n t h en o r m a lo r d e r .

D R A G O N E T B C F H I J K L M P Q S U V W X Y Zc i p h e ra l p h a b e t

A B C D E F G H I J K L M N O P Q R S T U V W X Y Zn o r m a la l p h a b e t

T h eu s e rc h o o s e st o c o d eo r d e c o d e f r o ma m e n u .

2 3 5

Page 250: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 250/306

I n s t r u c t o rN o t e s3 3 . D e b u g g i n g ,S T O P ,C O N T

S i n c et h e" s i g ha n dm o a n "t e c h n i q u ei s a l o s e r ,o u rs t u d e n t sn e e da b a go f t r i c k s

t h a tw i l lh e l pi s o l a t ep r o g r a mb u g s .T h e ys h o u l dp r a c t i c eo n t h ep r o g r a m st h e y

a r ew r i t i n ga s t h e yg o t h r o u g ht h i sb o o k .

T h ei n e x p e r i e n c e dd e b u g g e rf e e l sh o p e l e s si n e r t i aw h e na p r o g r a md o e s n ' tw o r k

r i g h t .R a t h e rt h a ns i t a n ds t a r e ,i t i s m o r eu s e f u lt o t r ys o m ec h a n g e s .A n y

c h a n g e sa r eb e t t e rt h a n n o n e , b u tr a n d o mc h a n g e sa r ev e r yi n e f f i c i e n t .T h eb e s t

c h a n g e sa r et h o s et h a te l i m i n a t es e c t i o n so f t h ep r o g r a m f r o mt h el i s to f p o s s i b l

h i d i n gp l a c e sf o rt h eb u g .

A s p r o g r a m sg r o wi n c o m p l e x i t y ,m o r eo f t h eb u g sr e s u l tf r o mu n f o r e s e e ni n t e r

a c t i o n sb e t w e e ns e p a r a t ep a r t s o ft h ep r o g r a m .T h eb a go f t r i c k sw e o f f e ra l s o

h e l p sf i n dt h e s e .D e l a yl o o p s ,P R I N Ts t a t e m e n t s ,a n dS T O Ps t a t e m e n t sh e l pt h e

s t u d e n ts e eh o wt h ep r o g r a mi s f u n c t i o n i n g .

D o n ' to v e r l o o kt h o s e t e c h n i q u e sy o uc a nu s ea f t e rt h ep r o g r a mi s s t o p p e d w i t ha

S T O Ps t a t e m e n to r aR U N / S T O Pk e y p r e s s .Y o uc a nP R I N To u ta n yv a r i a b l e v a

u e sy o ul i k e ,t o s e ew h a tt h ep r o g r a mh a sd o n e .Y o uc a na l s od o a r i t h m e t i ci n t h e

P R I N Ts t a t e m e n tt o c h e c kw h a tt h ep r o g r a ms h o u l db e d o i n g .Y o uc a ne v e n

c h a n g ev a r i a b l ev a l u e s( f o re x a m p l e ,t h ev a l u eo f al o o pv a r i a b l e ) .W h e ny o ua r e

r e a d y ,C O N T i n u et h ep r o g r a mr u n .

Q u e s t i o n s :

1 . H o wc a ny o um a k et h ec o m p u t e rp r i n t

B R E A KI N L I F E5 5

b y a d d i n ga l i n e i nt h ep r o g r a m ?

2 . H o wa r et h eS T O Pa n dt h eE N Ds t a t e m e n t sd i f f e r e n t ?

3 . H o wa r et h eS T O Ps t a t e m e n ta n dt h eR U N / S T O Pk e yd i f f e r e n t ?

2 3 6

Page 251: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 251/306

4 . W h a td o e st h eC O N Tc o m m a n dd o ?

5 . W h yw o u l dy o up u tS T O Ps t a t e m e n t si n y o u rp r o g r a m ?

6 . H o wd o d e l a yl o o p sh e l py o u d e b u ga p r o g r a m ?

7 . H o wd o e x t r aP R I N Ts t a t e m e n t sh e l py o u d e b u ga p r o g r a m ?

8 . W h yd o y o ut a k et h eS T O Pa n de x t r aP R I N Ts t a t e m e n t so u to f t h ep r o g r a m

a f t e ry o uh a v ef i x e dt h ee r r o r s ?

9 . C a ny o up i c kt h el i n ew h e r et h eR U N / S T O Pk e yw i l ls t o pt h ep r o g r a m ?C a n

y o up i c kt h el i n ei f y o ua r eu s i n gt h eS T O Ps t a t e m e n t ?

2 3 7

Page 252: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 252/306

L e s s o n3 3 . D e b u g g i n g ,S T O P ,C O N T

T h eS T O PS t a t e m e n tE n t e ra n dr u n :

1 0 R E MS E C R E TS T O P

2 0 P R I N T" { C L R } 1 12 5 R = I N T ( R N D ( 8 ) * 2 0 0 )3 0 F O R1 = 0 T O 2 0 0

4 0 I F I = R T H E NS T O P5 0 N E X TI

T h ep r o g r a mw i l l s t o p ,a n dt h ec o m p u t e rw i l lp r i n ta m e s s a g e :

B R E A KI N L I N E4 0

W h a td o y o us u p p o s et h es e c r e tv a l u eo f I w a s ?

E n t e r : P R I N TI ( N ol i n en u m b e r )

a n df i n do u t .

2 3 8

Page 253: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 253/306

H o wt o S t a r tI t A g a i n

E n t e rt h ec o m m a n dC O N T .T r yi t !

S T O Pi s l i k eE N D .

S T O Pm a k e st h ec o m p u t e rs t o pa n de n t e rt h ee d i tm o d e .

I t i s l i k eE N De x c e p ti t p r i n t st h en u m b e ro f t h el i n et h a tt h eS T O Pi s i n .

Y o uc a nh a v ea s m a n yS T O Ps t a t e m e n t si n y o u rp r o g r a ma s y o ul i k e .

S T O Pi s u s e df o rd e b u g g i n gy o u r p r o g r a m .

A n o t h e rW a yt o S t o pR u n n i n gt h eP r o g r a m

Y o uc a ns t o pr u n n i n gt h ep r o g r a mb y p r e s s i n g t h eR U N / S T O Pk e y .

T r yi t :

1 0 R E M G OF O R E V E R1 5 P R I N T" { C L R } { D O W N } "

1 6 G O S U B9 02 0 P R I N T " M U D { D O W N } M2 1 G O S U B9 0

2 2 P R I N T" T U R T L E S{ D O W N } 1 12 3 G O S U B9 0

2 4 P R I N T" O F { D O W N } "2 5 G O S U B9 02 6 P R I N T" T H E { D O W N } "2 7 G O S U B9 02 8 P R I N T" W O R L D { D O W N } "2 9 G O S U B9 03 0 P R I N T" U N I T E { D O W N }3 1 G O S U B9 0

4 0 G O T O1 0

9 0 F O RT = l T O 1 0 0 0 : N E X T T : R E T U R N

T U R T L EO F - T H E

W O R L D

2 3 9

Page 254: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 254/306

P r e s s i n gt h eR U N / S T O Pk e ys t o p s t h ep r o g r a mw h e r e v e ri t i s . I t p r i n t s :

B R E A KI N L I N EX X a n de n t e r st h ee d i tm o d e

w h e r eX Xi s t h el i n en u m b e rw h e r ei t s t o p s .

T h ec o m m a n dC O N Ts t a r t st h ep r o g r a ma g a i na t t h es a m es p o t .

T h ea b o v ep r o g r a mu s u a l l ys t o p si n l i n e9 0 .W h y ?T r yt o m a k ei t s t o pi n s o m e

o t h e rl i n e .

W h a tD o Y o uD o A f t e rY o uS t o p ?

Y o up u tS T O Pi n w h a t e v e rp a r t o fy o u rp r o g r a mi s n o tw o r k i n gr i g h t .T h e ny o u

r u nt h ep r o g r a m .A f t e ri t s t o p s ,y o ul o o kt o s e ew h a th a p p e n e d .

( O ry o uu s et h eR U N / S T O Pk e yt o s t o p t h ep r o g r a m , b u ti t m a yn o ts t o pi n t h e

s p o tw h e r et h et r o u b l ei s . )

P u to n y o u rt h i n k i n gc a p .A s ky o u r s e l fq u e s t i o n sa b o u tw h a t h a p p e n e da s t h e

p r o g r a mr a n .

Y o ua r ei n t h ee d i tm o d e .Y o uc a n :

L i s tp a r t s o ft h ep r o g r a m a n ds t u d yt h e m .

U s et h eP R I N Ts t a t e m e n tt o l o o ka t v a r i a b l e s .D o t h e yh a v et h ev a l u e s

y o ue x p e c t e d ?

D o l i t t l ec a l c u l a t i o n so n t h ec o m p u t e ri n t h ee d i tm o d et o c h e c kw h a t

t h ec o m p u t e ri s d o i n g .

U s et h eL E Ts t a t e m e n tt o c h a n g et h ev a l u e so f v a r i a b l e s .

I f y o uf i n dt h et r o u b l e ,y o um a ya d dl i n e s ,c h a n g el i n e s ,o r d e l e t el i n e s .

2 4 0

Page 255: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 255/306

S t a r t i n gt h eP r o g r a m A g a i n

T h e r ea r ef o u rw a y st o s t a r ta p r o g r a m .T h e ya r e :

C O N T i f y o uh a v en o tc h a n g e dt h ep r o g r a m

G O T OX X w h e r eX Xi s a l i n en u m b e r

R U NX X w h e r eX Xi s a l i n en u m b e r

R U N y o u ro l df r i e n d

Y o um a yu s et h eC O N Tc o m m a n di f y o uh a v en o t :

a d d e da l i n e

d e l e t e da l i n e

o r c h a n g e da l i n eb y e d i t i n gi t

O r y o um a ys t a r tr u n n i n gt h ep r o g r a ma t a d i f f e r e n ts p o tb y e n t e r i n g( w i t h o u t

l i n en u m b e r )t h es t a t e m e n t :

G O T OX X

w h e r eX Xi s t h el i n en u m b e ry o uw a n tt o r e s t a r ta t .

I f y o uh a v e c h a n g e dt h ep r o g r a m ,y o u ro n l yc h o i c ei s t o s t a r t a tt h eb e g i n n i n go r

a t s o m eo t h e rl i n en u m b e rX Xw i t hR U N .

W h a ti s t h ed i f f e r e n c eb e t w e e nt h e s e f o u rw a y s ?

C O N Ta n dG O T OX Xu s et h ev a l u e si n t h e v a r i a b l eb o x e sl e f to v e rf r o mt h el a s t

t i m ey o ur a n .

C O N Ts t a r t s a tt h el i n ew h e r et h eB R E A Ko c c u r r e d .

G O T OX Xs t a r t sa t l i n eX X .

R U Na n dR U NX Xt h r o wa w a ya l l t h ev a r i a b l eb o x e sm a d et h el a s tt i m e ,t h e n

e x e c u t et h ep r o g r a m .

R U Ns t a r t s a tt h ef i r s tl i n eo f t h ep r o g r a m .

R U NX Xs t a r t sa t l i n eX X .

2 4 1

Page 256: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 256/306

P r e p o r ea D i s kf o rt h eS t u d e n t

Y o us h o u l d p r e p a r ea s p e c i a ld i s kf o rt h e s t u d e n t ' s e x c l u s i v eu s e . A l lt h ep r o g r a mt h a tt h e s t u d e n tw r i t e s o rc o p i e sf r o mt h eb o o kc a nb e p u to n t h a td i s k .T h i s

m a k e st h ep r o g r a m se a s yt o f i n da n di s o l a t e so t h e rd i s k sf r o mh o r r i b l e a c c i d e

l i k ea c c i d e n t a le r a s u r e o rg e t t i n gc l o b b e r e d .

Y o um u s tu s et h ed i s kN E Wc o m m a n dt o f o r m a ta n yn e w ,f r e s h - f r o m - t h e - b

d i s k b e f o r ey o uc a ns t o r ei n f o r m a t i o no n i t . ( D on o tc o n f u s et h e d i s kN E Wc o m

m a n dw i t ht h eB A S I CN E Wc o m m a n d . )I f y o uh a v ea n o l dd i s kw h i c h y o ua r e

w i l l i n gt o e r a s e ,y o uc a nN E Wi t i n s t e a do f a b r a n dn e wd i s k .

P u tt h e d i s ki n t h ed r i v et h i sw a y :H o l dt h e d i s kw i t ht h el a b e lu p a n dy o u r

t h u m bo n t h el a b e ls o t h a ty o uc a ni n s e r tt h en o n l a b e le n di n t ot h e d i s kd r i v e .

P u s ht h ed i s ki n u n t i li t s t a y s ,a n dt h e nc l o s et h ed r i v ed o o ru n t i li t c l i c k so u ta n d

s t a y s s h u t .

N o we n t e r :

O P E N 1 5 , 8 , 1 5 , M N 0 : S T U D E N TD I S K , S I "

T h ed r i v ew i l lc l a t t e ra n dw h i r , t h er e dl i g h tw i l lc o m eo n ,a n da f t e ra b o u ta

m i n u t e ,t h el i g h tw i l lg o o f fa n dt h ed r i v ew i l l s t o p .( I ft h er e dl i g h tc o n t i n u e st o

b l i n k ,a d i s ke r r o rh a so c c u r r e d .C h e c kt h a ty o ut y p e dt h ec o m m a n dc o r r e c t l y ,

a n dt h a tn o l i t t l ep a p e rt a bi s s t u c ko v e rt h ew r i t e - p r o t e c tn o t c ho n t h ed i s k .R e

p e a tt h ec o m m a n d .I f y o us t i l lh a v et r o u b l e ,c o n s u l tt h ed i s k d r i v em a n u a l . )

N o we n t e r :

C L O S E1 5

W h a t ' sI n a N a m e ?

W en a m e dt h ed i s kS T U D E N TD I S K .Y o uc a nu s ea n yo t h e rn a m ey o uw i s h ,j u s t

s o l o n ga s i t c o n t a i n s1 6 o r l e s sc h a r a c t e r sa n dn o c o m m a s ,q u e s t i o nm a r k s ,

q u o t e s ,a s t e r i s k s ,o r c o l o n s .

2 4 4

Page 257: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 257/306

T h en u m b e rS I i s t h e d i s kI D n u m b e r .I t i s i m p o r t a n tt o u s ea u n i q u es e to f t w o

l e t t e r sa n d / o rn u m b e r sf o re a c hd i s ki n y o u rc o l l e c t i o n .S o m ea d v a n c e dd i s k -

u s i n gp r o g r a m sr e q u i r ee a c hd i s kt o h a v ea n I D n u m b e rd i f f e r e n tf r o mo t h e r d i s k

u s e di n t h ep r o g r a m .

C h e c kI t O u t

T o c h e c kt h a tt h ed i s ki s o k a y ,e n t e r :

l o a d " $ " , 8

C a r e f u l !L O A Dw i l le r a s ea n y p r o g r a m y o uh a v ei n m e m o r y .

N o we n t e r :

L I S T

Y o us h o u l ds e e :

0 " S T U D E N TD I S K " S I 2 A

w i t ha l l b u tt h e z e r oi n r e v e r s el e t t e r so n t h es c r e e n .T h eL O A Ds t a t e m e n te r a s e d

a n yp r o g r a m sy o uh a di n t h ec o m p u t e r .T h e2 A i d e n t i f i e st h ek i n do f C o m

m o d o r ee q u i p m e n tu s e d .

W h e ny o uo p e nt h ed o o rt o t a k e t h e d i s ko u t ,t h e d i s ks h o u l da u t o m a t i c a l l yb e

p u s h e do u ta n i n c h .

P r a c t i c eM a k e sP e r f e c t

N o ww o u l db e a g o o dt i m et o t u r nt o l e s s o n1 4 a n dp r a c t i c es a v i n ga n dl o a d i n g

p r o g r a m st o t h ed i s k .

S a v i n gP r o g r a m so n C a s s e t t eT a p e

I f y o u d on o th a v ea d i s kd r i v e ,y o uc a ns a v ea n dl o a dp r o g r a m so n t a p ei n a

D a t a s s e t t e ,u s i n gt h ec o m m a n d s :

S A V E " H I "

L O A D " H I "

2 4 5

Page 258: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 258/306

R e s e r v e dW o r d s

A B S

C H R $

D A T A

E N D

F N

G E T

I F

L E F T $

M I D $

N E W

O N

P E E K

R E A D

S A V E

T A B (

U S R

V A L

W A I T

A N D

C L R

D E F

E X P

F O R

G O S U B

I N P U T

L E N

N E X T

O R

P O K E

R E M

S G N

T A N

V E R I F Y

A S C

C M D

D I M

F R E

G O T O

I N P U T #

L E T

N O T

O P E N

P O S

R E S T O R E

S I N

T H E N

A T N

C L O S E

I N T

L I S T

P R I N T

R E T U R N

S P C (

T I

C O N T

L O A D

P R I N T #

R I G H T $

S Q R

T I $

C O S U

a r

& \

mIL O G J 5 f

R^ — * .J C J L s

R N D R U N

S T E P S T O P

T O

S T R $ S Y S

2 4 6

Page 259: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 259/306

A n s w e r st o A s s i g n m e n t s

T h ea n s w e r sb e l o wa r ei n o r d e rb y l e s s o nn u m b e r .L o o ka t t h ef i r s tR E Ms t a t e

m e n ti n e a c hp r o g r a ml i s t i n gt o f i n dt h e l e s s o ni t m a t c h e s .T h es e c o n dR E Ms t a t e

m e n tw i l lg i v ey o ut h en a m eo f t h ep r o g r a m .

1 R E MA l - 31 0 R E M N E WF R I E N D

2 0 P R I N T" H I , T H E R E 1 1

3 0 P R I N T " C O M P U T E R "

1 R E M A 2 - 2

1 0 R E MC O L O R E DN A M E S

2 0 P O K E5 3 2 8 1 , 03 0 P R I N T" { W H T } m { R E D } I { C Y N } N { P U R } D { G R N } A "3 5 P R I N T" { Y E L }A N N E "4 0 P R I N T" { R V S H R E D }C A R L S O N{ W H T } "

1 R E M A 3 - 51 0 R E M B I R D S

1 5 P O K E5 3 2 8 1 , 02 0 P R I N T" { C L R } "2 2 P R I N T

2 4 P R I N T3 0 P R I N T " { C Y N }U Q I "3 2 P R I N T

3 4 P R I N T4 0 P R I N T " { Y E L } J Q K "4 2 P R I N T

4 4 P R I N T

4 6 P R I N T

5 0 P R I N T " { G R N }C W C "9 0 P R I N T" { Y E L } "

2 4 7

Page 260: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 260/306

1 R E MA 4 - 31 0 R E MS M I L E1 5 P R I N T " { C L R } "

2 0 P R I N T2 2 P R I N T2 4 P R I N T2 6 P R I N T " { R E D } " 3 0 P R I N T " 0 0 0 0 "3 2 P R I N T " 0 0 0 0 "3 4 P R I N T

3 5 P R I N T3 6 P R I N T

3 7 P R I N T3 8 P R I N T

4 0 P R I N T

4 2 P R I N T "* * "

4 4 P R I N T "* * "4 6 P R I N T " * * "4 8 P R I N T " * * * * • «

1 R E M A 5 - 1D A N

1 5 P R I N T " { C L R } "2 0 P R I N T " N A M EA M U S I C A L G R O U P "3 0 I N P U TA $4 0 P R I N T5 0 P R I N T " N A M EO N EO F T H E I RS O N G S"

6 0 P R I N T7 0 I N P U TB $

7 5 P R I N T8 0 P R I N T A $ ; "P L A Y S" ; B $

1 R E M A 5 - 21 0 R E M3 P R I N T S

1 5 P R I N T " { C L R } "2 0 P R I N T " G I V EM E T H E N A M EO F A M U S I C A LG R O U P "

2 2 I N P U TG $

2 5 P R I N T3 0 P R I N T " W H A TI S O N EO F T H E I RT U N E S "

3 5 I N P U TT $4 0 P R I N T " { D O W N } "

5 0 P R I N T G $ ;5 2 P R I N T " P L A Y S" ;

5 4 P R I N T T $

2 4 8

Page 261: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 261/306

Page 262: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 262/306

1 R E M A 6 - 2

1 0 R E M* * * F A V O R I T E * * *1 5 P R I N T " { C L R } { R E D } "2 0 P R I N T " { 2D O W N j W H A TI S Y O U RF A V O R I T EC O L O R ? "

2 5 P R I N T2 6 I N P U TC $

3 0 P R I N T " { D O W N } { B L U } I P U T T H A TI N B O XC $ . "3 5 P R I N T "{ D O W N }{ G R N } N O WY O U R F A V O R I T E A N I M A L ?

{ D O W N } "4 0 I N P U TC $

4 5 P R I N T "{ D O W N }{ Y E L }I P U TT H A TI N B O XC $ T O O "5 0 P R I N T " { D O W N } { B L K } N O WL E T ' SS E EW H A TI S I N B O XC

5 5 P R I N T " { D O W N } I TI S : "5 6 P R I N T6 0 P R I N TC $

1 R E M A 7 - 2

1 0 R E MF E E L I N G S

1 2 P R I N T" { C L R } "2 0 P R I N T

2 2 P R I N T2 4 P R I N T" H O WI S T H EW E A T H E R ? "2 6 P R I N T2 8 I N P U TW $

2 9 P R I N T3 0 P R I N T" A N DH O WD O Y O UF E E L ? "3 2 P R I N T3 4 I N P U TF $

3 6 P R I N T3 8 P R I N T" Y O UM E A N : "4 0 P R I N T4 5 S $ = W $+ " A N D" + F $

5 0 P R I N T" " ; S $

I R E M A 8 - 21 0 R E M T E E N T I M E S

I I R E M2 0 P R I N T"

2 1 P R I N T" T E E N P O W E

2 2 P R I N T

2 3 P R I N T2 4 P R I N T

2 5 P R I N T

3 0 G O T O2 0

2 5 0

Page 263: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 263/306

1 R E MA 8 - 4

— > 1 0 R E MC O L O RF A S TF R I E N D S1 5 P O K E5 3 2 8 1 , 0

2 0 P R I N T " { C L R } { W H T } "2 2 P R I N T2 4 P R I N T

3 0 P R I N T " { Y E L } B R I A N "4 0 P R I N T " { G R N } S T E V E "

^ 5 0 P R I N T

9 0 G O T O3 0

1 R E M A 9 A - 2

1 0 R E M S P O R T S2 0 P R I N T " { C L R } " : P R I N T : P R I N T2 5 P R I N T" W H I C HD O Y O UL I K E ,F O O T B A L L O R B A S E B A L L ?

n

3 0 I N P U TA $3 2 P R I N T : P R I N T : P R I N T

3 5 I F A $ = " F O O T B A L L " T H E NP R I N T " F O O T B A L LI S F U N "4 0 I FA $ = " B A S E B A L L " T H E N P R I N T" P L A Y B A L L ! "

1 R E M A 9 B - 21 0 R E MW H A TC O L O R1 5 P O K E 5 3 2 8 1 , 02 0 P R I N T " { C L R } { W H T } { 3D O W N } "3 0 P R I N T "P L A Y E R1 T U R NY O U RB A C K { D O W N } "3 2 P R I N T "P L A Y E R2 E N T E RA C O L O RN A M E { D O W N } "4 0 I N P U TC $

4 5 P R I N T" { C L R } { 3D O W N } "5 0 P R I N T " { D O W N }P L A Y E R1 T U R N A R O U N DA N DG U E S S ?

{ D O W N } "5 5 I N P U TG $5 6 P R I N T6 0 I F G $ = C $ T H E NG O T O8 0

6 5 P R I N T" { Y E L }W R O N G { D O W N } "6 9 G O T O5 5

8 0 R E M C O R R E C TA N S W E R8 2 P R I N T" { G R N }R I G H T I "9 0 P R I N T " { W H T } "

2 5 1

Page 264: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 264/306

1 R E M A 1 0 - 11 0 R E MB I R T H D A Y 1 5 P O K E5 3 2 8 1 , 02 0 P R I N T M { C L R } { W H T } { 3D O W N } "3 0 P R I N T 1 1H O WO L D A R EY O U ? { D O W N } "3 1 I N P U TA3 2 P R I N T3 3 P R I N T "A N D W H A TY E A RI S I T N O W ? { D O W N } "4 0 I N P U TY 4 5 B = Y - A5 0 P R I N T " { D O W N }H A SY O U RB I R T H D A YC O M EY E TT H I SY

E A R ? "5 1 P R I N T "< Y O R N > "

5 2 P R I N T

5 5 I N P U TA $5 7 P R I N T

6 0 I F A $ = " N " T H E NB « B - 17 0 P R I N T" { G R N }Y O UW E R EB O R NI N " y B9 0 P R I N T " { W H T } "

1 R E M A 1 0 - 2

1 0 R E MM U L T I P L I C A T I O N

1 5 P O K E 5 3 2 8 1 , 02 0 P R I N T t t { C L R } { W H T } { 3D O W N } 1 13 0 P R I N TM G I V EM E A N U M B E R { D O W N } "3 1 I N P U TN l

3 2 P R I N T3 3 P R I N T "G I V EM E A N O T H E R{ D O W N } "

4 0 I N P U TN 24 1 P R I N T4 5 A = N 1 * N 25 0 P R I N T " H E R EI S T H E I RP R O D U C T : { D O W N } "5 5 P R I N TM M ; A9 0 P R I N TH { W H T } "9 5 R E M T R YN l = 2 0 0 0 0 0 0A N DN 2 = 3 0 0 0 0 0 09 6 R E MT H EA N S W E RI S 6 E + 1 2I N S C I E N T I F I C

9 7 R E M N O T A T I O N

2 5 2

Page 265: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 265/306

1 R E M A 1 1 A - 1

1 0 R E MN I C K N A M E S1 5 P O K E5 3 2 8 1 , 0

« 2 0 P R I N T M { C L R } { W H T } { 3D O W N } 1 1* 2 4 P R I N T "P L A Y E R1 * W H A TI S Y O U RL A S T N A M E ? { D O W N }

2 5 I N P U T L N $2 6 P R I N T

| 3 0 P R I N T "P L A Y E R1 T U R NY O U R B A C K{ D O W N } 1 13 1 P R I N T "P L A Y E R2 : W H A TI S H I SN I C K N A M E { D O W N } "3 2 I N P U TN N $3 3 P R I N T

4 1 P R I N T " P L A Y E RI s T U R NA R O U N DA N DP R E S SR E T U R N{ D O W N } "

4 6 I N P U TA5 0 P R I N T " { C L R } { 9D O W N } "

5 5P R I N T "A R O U N D H E R E Y O U A R E C A L L E D : { D O W N } "

6 0 P R I N T" { Y E L }" ; N N $ ; " { G R N }" ; L N $9 0 P R I N T " { 8 D O W N } { W H T } "

1 R E MA 1 1 A - 2

1 0 R E Ml " # $ %I N S U L T S% $ # " !1 5 P O K E 5 3 2 8 1 , 02 0 P R I N T " { C L R } { W H T } { 3D O W N } 1 12 4 P R I N T "H E YY O U ! W H A TI S Y O U RN A M E ! { D O W N } "2 5 I N P U TN $2 6 P R I N T2 7 P R I N T "B A H !" f N $ ; " . . . "3 0 R E MD E L A YL O O P3 1 F O RT = l T O 1 0 0 0 : N E X TT3 3 P R I N T

5 0 P R I N T "{ C L R }{ 1 1 D O W N }{ Y E L }Y O U R F A T H E RE A T SO N IO N S ! "

9 0 P R I N T "{ 8 D O W N H W H T } "

2 5 3

Page 266: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 266/306

1 R E M A 1 1 B - 11 0 R E M S L O W P O K E1 5 P O K E 5 3 2 8 1 , 02 0 P R I N T " { C L R } { W H T } { 3D O W N } 1 1

2 4 P R I N T " L I K E . . .{ 3 D O W N } 1 12 5 F O RT » l T O 1 0 0 0 : N E X TT2 6 P R I N T3 0 P R I N T "M O L A S S E S . . . { 3D O W N } "3 1 F O RT » l T O1 0 0 0 I N E X TT3 3 P R I N T4 0 P R I N T 1 1 I N . . .{ 3 D O W N } 1 14 1 F O RT » l T O1 0 0 0 : N E X TT4 2 P R I N T5 0 P R I N T " J A N U A R YI "

9 0 P R I N T "{ D O W N } { W H T } "

1 R E MA 1 1 B - 21 0 R E M C L O C K

1 5 P O K E5 3 2 8 1 , 0

2 0 P R I N T "{ C L R } { W H T }{ 3 D O W N } 1 12 3 P R I N T "P R E S E N TT I M E iH R , M I N , S E C ? "2 4 P R I N T2 5 I N P U TH , M , S2 6 L E TF = 5 5 03 0 F O R1 = 1 T O F : N E X TI

3 1 P R I N T " { H O M E } { D O W N }3 2 P R I N T " { H O M E } { D O W N } " ; H ; T A B ( 3 ) ; M ; T A B ( 6 ) ; S3 3 L E T S = S + 14 0 I FS < 6 0T H E NG O T O2 6

4 1 L E TM = M + 14 2 L E TS = 0

4 5 I FM < 6 0 T H E N G O T O2 6

5 0 L E T H = H + 15 1 L E TM = 06 0 I F H = 2 4 T H E N L E TH = 06 1 G O T O2 69 0 P R I N T " { D O W N } { W H T } "

2 5 4

Page 267: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 267/306

Page 268: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 268/306

1 R E MA 1 2 B - 41 0 R E M* * * P I C KA C A R D* * *1 5 P O K E5 3 2 8 1 , 0 : L E TG = 12 0 P R I N T M { C L R } { Y E L } { 3D O W N } 1 1

2 2 P R I N T " P L A Y E R 2 : T U R NY O U RB A C K { D O W N } { C Y N } "2 4 P R I N T " P L A Y E R 1 : T H I N KO F A C A R D , H I T R E T U R N { D O W N }

2 6 I N P U TA $3 0 P R I N T" { C L R } { 3D O W N } 1 13 2 P R I N T " P L A Y E R 1 : T E L LM E T H ES U I T {D O W N }{ P U R }"3 4 P R I N T" H E A R T S , D I A M O N D S , C L U B SO R S P A D E S { D O W N } "3 6 I N P U TS $4 0 P R I N T " { C Y N } { 3D O W N } "4 2 P R I N T " N O W ,T E L LM E T H EV A L U E1 T O 1 3 { D O W N } "4 4 I N P U TV5 0 P R I N T " { C L R } { Y E L } { 3D O W N } "5 2 P R I N T" P L A Y E R 2 : G U E S ST H EC A R D . W H I C HS U I T ? { D O W N }

{ P U R } "5 4 P R I N T" H E A R T S , D I A M O N D S , C L U B S O R S P A D E S { D O6 0 I N P U TG S $ : I FG S $ = S $ T H E NG O T O7 0

6 2 P R I N T" { G R N } { 2 D O W N } "6 4 P R I N T" W R O N G ,G U E S SA G A I N . W H I C HS U I T ? { D O W N }

{ P U R } "6 8 L E TG = G + 1 : G O T O6 0

7 0 P R I N T " { C L R } { Y E L } { 3D O W N } "7 2 P R I N T" R I G H T 1 N O W ,W H A T V A L U E1 T O 1 3 ? { D O W N } "8 0 I N P U TG V : I F G V = V T H E N G O T O9 08 2 P R I N T " { G R N } { 2 D O W N } "8 4 I F G V < VT H E N P R I N T " W R O N G , G U E S SH I G H E R .W H A TV A

L U E ? { D O W N } { Y E L } "8 6 I F G V > VT H E NP R I N T" W R O N G , G U E S SL O W E R .W H A T V A L

U E ? { D O W N } { Y E L } "8 8 L E TG = G + 1 : G O T O8 0

9 0 P R I N T " { C L R } { Y E L } { 3D O W N } "9 2 P R I N T " C O N G R A T U L A T I O N SI "

9 4 P R I N T" Y O UG U E S S E DI T I N O N L Y " ; G ; " T R I E S { 2D O W N }i i

9 6 P R I N T" P L A YA G A I N " ; : I N P U T A $ : I FA $ = " Y E S "T H E NGO T O1 0

9 8 P R I N T" { 4 D O W N } "9 9 P R I N T" S E EY O UA G A I NS O O N l { W H T } "

2 5 6

Page 269: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 269/306

Page 270: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 270/306

1 R E MA 1 6 - 2

1 0 R E MB L I N K I N GN A M E

1 2 P O K E5 3 2 8 1 , 7 : P R I N T " { C L R } { W H T } { 5D O W N } "

2 0 N $ = M KA R E N "3 0 P R I N T M { H O M E } { G R N } { 7D O W N } " ; N $3 5 F O RT = l T O 5 0 0 : N E X TT4 0 P R I N T M { H O M E } { R E D } { 7D O W N } " ; N $4 5 F O RT = l T O 5 0 0 : N E X TT9 0 G O T O3 0

1 R E MA 1 7 A - 11 0 R E MR A B B I T S

1 2 P O K E 5 3 2 8 1 , 0 : P R I N T " { C L R } { W H T } { 2D O W N } 1 12 0 F b R1 = 0T O 1 0 0 S T E P53 0 P R I N TI

4 0 F O RT = l T O 2 0 0 : N E X TT5 0 N E X TI

1 R E M A 1 7 B . 31 0 R E MC L I M B I N G N A M E1 2 P R I N T M { C L R } { 2 2D O W N } 1 1

1 5 N $ = M S T A N I S L A U SM A Z U R S K Y 1 12 0 F O R1 = 1 T O 2 3

3 0 P R I N TN $

3 2 F O RT = l T O 2 0 0 : N E X TT3 5 P R I N T" { U P }3 6 P R I N T" { 3 U P } "

4 0 N E X TI

1 R E MA 1 7 B - 51 0 R E MO P E R AS O P R A N O

1 2 P R I N T M { C L R } { W H T } { 3D O W N } 1 12 0 F O R1 = 1 T O 3

2 1 P O K E5 3 2 8 1 , 1 + 52 2 P R I N T " { D O W N } S I N G "2 4 F O RT = l T O 1 0 0 : N E X TT

3 0 F O R J = l T O3

3 2 P R I N T" { D O W N j T R A 1 1 ;3 4 F O R T = l T O1 0 0 : N E X TT

4 0 F O RK = 1 T O 34 2 P R I N T" L A 1 1 ;

4 4 F O RT = l T O 1 0 0 : N E X TT5 0 N E X TK5 2 P R I N T6 0 N E X TJ7 0 N E X TI9 0 P O K E5 3 2 8 1 , 0

2 5 8

Page 271: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 271/306

1 R E MA 1 9 - 21 0 R E MF L YA W A Y1 2 C = 5 4 2 7 2 : P O K E C + 1 , 9

1 3 P O K EC + 5 , 9 : P O K EC + 6 , 4 01 4 P O K EC + 2 4 , 1 5

2 0 P R I N T 1 1{ C L R } { B L K }{ 2 2 D O W N } 1 1 ;2 5 P R I N T "{ P U R } 1 13 0 P R I N T " U Q l { 3L E F T } " ;3 2 P O K E C + 4 , 3 34 0 F O RT = 1 T O 2 0 0 : N E X TT4 2 P O K E C + 4 , 3 2

4 5 P R I N T 1 1{ 2 L E F T }{ U P } 1 1;

5 0 P R I N T " J Q K { 3 L E F T } " ;6 0 F O R T = 1 T O 2 0 0 : N E X TT6 5 P R I N T " { 2 L E F T } { U P } " ;7 0 G O T O3 0

I R E MA 2 0 - 6

1 0 R E MA R E Y O U Q U I C K ?

I I P R I N T " { C L R } { 3D O W N } H I T R E T U R NW H E NY O US EE "

1 2 P R I N T " { D O W N } T H EQ U E S T I O NM A R K "1 3 P R I N T " { 2D O W N } N O T T O OH A R D 1 "1 4 F O R1 = 1 T O 3 0 0 0 : N E X TI

1 5 P R I N T " { C L R } "2 0 F O R1 = 1 T O R N D ( 0 ) * 9 0 0 0 + 5 0 0 : N E X TI

3 0 P R I N T " { H O M E } { 9 D O W N } " ; T A B ( 1 7 ) ;3 1 T = T I

3 2 I N P U TA4 0 T = T I - T

4 1 I F T < 3T H E NP R I N T" J U M P E D T H E G U N "4 4 T = T / 6 04 5 T = I N T ( T * 1 0 0 ) / 1 0 0

5 0 P R I N T" { 2 D O W N } Y O U R T I M EW A S " ; T ; " S E C O N D S "6 0 F O R1 = 1 T O 3 0 0 0 : N E X TI

9 9 G O T O1 5

1 R E M A 2 1 - 2

1 0 R E M A L L C O L O R S1 5 S = 5 3 2 8 11 6 B = S - 1

2 0 F O R1 = 0 T O 1 5

2 5 P O K EB , I

3 0 F O RJ = 0 T O1 5

4 0 P O K ES , J

4 2 F O RT = l T O 2 0 0 : N E X TT5 0 N E X TJ , I

2 5 9

Page 272: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 272/306

1 R E M A 2 3 - 1

1 0 R E MM E N UM A K E R1 5 P R I N T " { C L R } { 3D O W N } 1 12 0 P R I N T " W H I C HC O L O R 1 1

2 1 P R I N T2 2 P R I N T " < R > R E D "

2 4 P R I N T " < Y >Y E L L O W "2 6 P R I N T " < G >G R E E N " 2 8 P R I N T " < C > C Y A N "2 9 P R I N T3 0 F O RT = l T O 3 0 0 : N E X TT

3 1 G E T C $ : I FC $ = " "T H E N3 1

3 5 I F C $ = " R "T H E NC = 23 6 I F C $ = " Y "T H E NC = 7

3 7 I FC $ = " G "T H E NC = 5

3 8 I F C $ = " C "T H E NC = 3

4 0 P O K E 6 4 6 , C

5 0 P R I N T " C O L O R "6 0 P R I N T" { W H T } "7 0 F O RT = l T O9 0 0 : N E X TT

8 0 G O T O1 5

9 9 R E MM A K EA S T A RO F T H I SC O L O R

1 R E MA 2 6 - 2

1 0 R E MA N S W E R E R1 2 P R I N T H { C L R } { 3D O W N }{ W H T } 1 12 0 P R I N T 1 1E N T E RA Q U E S T I O N( A TL E A S T T H R E EW O R D S )

{ D O W N } "

2 5 I N P U TQ $2 8 L = L E N ( Q $ )3 0 R E MT A K E O F F" ? "

3 3 Q $ = L E F T $ ( Q $ , L - 1 ) + H . "3 6 R E M L O O K F O RW O R DE N D

3 9 F O R1 = 1 T O L4 0 C $ = M I D $ ( Q $ , I , 1 )4 5 I F C $ = "" T H E N S 1 = I : I = L4 6 N E X T5 0 F O R I = S 1 + 1 T OL5 2 C $ = M I D $ ( Q $ , I , 1 )5 4 I FC $ = "" T H E N S 2 = I : I = L5 6 N E X TI

5 8 R E ME X C H A N G E F I R S T A N D S E C O N D W O R D S6 0 S $ = M I D $ ( Q $ , S 1 + 1 / S 2 - S 1 )

6 2 V $ = L E F T $ ( Q $ # S 1 )6 3 P R I N T

6 5 P R I N T" " ; S $ + V $ + R I G H T $ ( Q $ # L - S 2 )

Page 273: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 273/306

1 R E M A 2 6 - 31 0 R E M* * * P I G L A T I N* * *

1 2 P R I N T M { C L R } { 3 D O W N } { W H T } M

2 0 P R I N T " { D O W N }P I G L A T I N "2 5 I N P U T " { D O W N }G I V EM E A W O R D : " ; W $3 5 L = L E N ( W $ )4 0 F O R1 = 1 T O L

4 2 L $ = M I D $ ( W $ , I , 1 )4 5 T = L $ = " A "O R L $ = " E "O R L $ = " I "O R L $ = " O "O R L $ = " U

n

5 0 I F T T H E N G O T O6 05 5 N E X TI6 0 P = I - 16 5 P L $ = R I G H T $ ( W $ , L - P ) + L E F T $ ( W $ , P ) + " A Y "7 0 I F 1 = 1T H E NP L $ = W $ + " L A Y "8 0 P R I N T " { 2D O W N }" ; P L $

9 0 G O T O2 5

1 R E M A 2 6 - 41 0 R E M* * * D O U B L E D U T C H* * *1 2 P R I N T " { C L R } { 3 D O W N } { W H T } "2 0 P R I N T " { D O W N } G I V EM E A S E N T E N C E : { D O W N } '3 0 I N P U TS $

3 5 L = L E N ( S $ )4 0 P R I N T " { 2D O W N }{ G R N } "4 7 R E MC H E C K L E T T E R S

5 0 F O R1 = 1 T O L5 2 L $ = M I D $ ( S $ , I , 1 )

6 0 I FL $ = " A "T H E N7 26 1 I F L $ = " E "T H E N7 2

6 2 I F L $ = " I "T H E N7 2

6 3 I F L $ = M O MT H E N7 2

6 4 I F L $ = " U " T H E N7 2

6 6 S S $ = S S $ + L $7 2 N E X TI7 5 P R I N T " { D O W N }I N D O U B L E D U T C H "7 7 P R I N T 1 1{ D O W N }" ; S S $8 0 P R I N T " { W H T } "

2 6 1

Page 274: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 274/306

1 R E M A 2 6 - 5

1 0 R E M* * * M E N U* * *1 2 P R I N T " { C L R } { 3 D O W N } { W H T j "

2 0 R E M M A K EA M E N U3 0 P R I N T " { 2D O W N }M A K E Y O U RC H O I C E : 1 13 1 P R I N T " { D O W N }< A >E A TA N A P P L E "3 2 P R I N T " { D O W N }< B >T A K EA N A P "3 3 P R I N T " { D O W N }< C >C A L LA F R I E N D "3 5 P R I N T " { D O W N } "4 0 G E T X $ : I FX $ = " "T H E N4 0

4 1 X = A S C ( X $ ) - 6 44 5 P R I N T " { D O W N }"

5 0 O N X G O T O 6 0 , 1 0 , 8 0

5 2 G O T O3 0

6 0 P R I N T "Y O U RS I S T E RA T E T H E L A S T O N E "

6 1 E N D

7 0 P R I N T "Y O U RB E DI S N O TM A D E "7 1 E N D

8 0 P R I N T "Y O U R F A T H E RI S O N T H EP H O N E "8 1 E N D

1 R E M A 2 7 - 11 0 R E M* * * B A C K W A R D* * *1 2 P R I N T " { C L R } { 3 D O W N } { W H T } "2 0 I N P U T" { D O W N }G I V EM E A N U M B E R " ; N3 0 N $ = S T R $ ( N )3 5 L = L E N ( N $ )4 0 F O R1 = 1 T O L

4 5 B $ = B $ + M I D $ ( N $ , L + 1 - I , 1 )5 0 N E X TI5 5 B = V A L ( B $ )5 7 P R I N T " { C L R } { 3D O W N } "6 0 P R I N T" " ; N $6 1 P R I N T" + " ; B $6 5 P R I N T" " ; L E F T $ ( " " , L )

7 0 A = N + B

7 2 A $ = S T R $ ( A )7 5 I F L E N ( A $ ) = L T H E NP R I N T " " ; A $7 6 I F L E N ( A $ ) = L + 1 T H E NP R I N T " " ; A $

8 0 E N D

2 6 2

Page 275: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 275/306

1 R E MA 2 7 - 21 0 R E M L E A P F R O G1 2 P R I N T " { C L R } {1 9 D O W N } 1 1

2 0 I N P U T " G I V EM E A N U M B E R " ; N2 5 N $ = S T R $ ( N )2 6 L = L E N ( N $ )2 7 N $ = R I G H T $ ( N $ , L - 1 ) : L = L - 13 0 F O R1 = 0 T O3 9 - L

3 2 P R I N T " { H O M E } { 1 1D O W N } "3 5 P R I N T T A B ( I ) ; "" ; N $4 0 N $ = R I G H T $ ( N $ , L - 1 ) + L E F T $ ( N $ , 1 )4 5 F O RT = l T O 5 0 0 : N E X TT5 0 N E X TI

1 R E M A 3 0 - 1

1 0 R E MT H I R T YD A Y SH A S . . .1 2 P R I N T " { C L R } { 8D O W N } "1 5 D I MD ( 1 2 )2 0 F O R1 = 1 T O 1 2

2 2 R E A DD ( I )2 5 N E X TI3 0 I N P U T "W H I C H M O N T H( 1 T O 1 2 ) " ; M3 1 P R I N T : P R I N T

3 5 P R I N T "M O N T HN U M B E R" ; M ; " H A S " ; D ( M ) ; " D A Y S 19 9 D A T A3 1 , 2 8 , 3 1 , 3 0 , 3 1 , 3 0 , 3 1 , 3 1 , 3 0 , 3 1 , 3 0 , 3 1

1 R E M A 3 2 B - 1

1 0 R E MB I G , B I G N U M B E R 11 2 P R I N T " { C L R } { 8D O W N } "2 0 F O R1 = 1 T O 1 7

2 5 F O RJ = l T O 3

2 7 D $ = S T R $ ( I N T ( R N D ( 8 ) * 1 0 ) )2 8 D $ = R I G H T $ ( D $ , 1 )3 0 N $ = N $ + D $3 5 N E X TJ

3 9 I F 1 = 1 7T H E N4 5

4 0 N $ = N $ + " , "

4 5 N E X TI5 0 N $ = "" + R I G H T $ ( N $ , L E N ( N $ ) - 1 )6 0 P R I N TN $

2 6 3

Page 276: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 276/306

I R E M A 3 2 - 21 0 R E MC I P H E R P R O G R A MI I G O T O1 0 0 01 0 0 R E M1 0 1 R E MM A I NL O O P1 0 2 R E M

1 1 0 G O S U B4 0 01 1 5 P R I N T" { 3 D O W N }C O D EO R D E C O D E< C / D > "1 1 6 G E T Y $ : I PY $ = " "T H E N1 1 61 2 0I F Y $ = M C " T H E N5 0 01 3 0 I P Y $ = " D " T H E N 6 0 01 4 0 G O T O1 1 5

4 0 0 R E M4 0 1 R E MG E TP A S S W O R D

4 0 2 R E M

4 0 5 I N P U T" I N P U TP A S S W O R D" ; P W $

4 0 6 R E MR E M O V E R E P E A T E D L E T T E R S4 0 8 F $ = L E F T $ ( P W $ , 1 )4 1 0 F O R1 = 2 T O L E N ( P W $ )4 1 1 L 1 $ = M I D $ ( P W $ , I , 1 )4 1 2 F O RJ = l T O L E N ( F $ )4 1 5 L 2 $ = M I D $ ( F $ , J , 1 )4 2 0 I FL 1 $ = L 2 $ T H E N 4 3 04 2 1 N E X TJ4 2 2 F $ = F $ + L 1 $4 3 0 N E X TI4 3 2 P W $ » F $4 3 3 P R I N T" { D O W N }S H O R T E N E DP A S S W O R D :M ; P W $4 3 4 R E M

4 3 5 R E MR E M O V EP A S S W O R DL E T T E R SF R O MT H EA L P H A B E T4 4 0 F O RJ = l T O L E N ( P W $ ) t L 2 $ = M I D $ ( P W $ , J , l )4 4 1 I F L 2 $ = L E F T $ ( A $ , 1 )T H E NA $ = M I D $ ( A $ , 2 ) j G O T O4 6 04 4 2 F O R1 = 2 T O L E N ( A $ ) : L 1 $ = M I D $ ( A $ , I , 1 )4 4 5 I F L 1 $ = L 2 $T H E NA $ = L E F T $ ( A $ # I - 1 ) + M I D $ ( A $ # 1 + 1 )4 5 5 N E X TI4 5 6 N E X TJ

4 6 0 R E M4 6 1 R E MF O R MT H E C O D EA L P H A B E T4 6 2 R E M

4 6 5 A $ = P W $ + A $4 7 0 P R I N T 1 1{ 2 D O W N }C I P H E RA L P H A B E T "4 7 1 P R I N T 1 1{ D O W N }M ; A $

4 7 2 P R I N T 1 1" ; B $4 7 3 P R I N T " { D O W N } P L A I NA L P H A B E T "*

4 9 9 R E T U R N5 0 0 R E M

5 0 1 R E MF O R C O D E DM E S S A G E5 0 2R E M5 0 5 P R I N T " { 2 D O W N } I N P U T M E S S A G E , E N DW I T H' * ' S I

G N { D O W N } "

2 6 4

Page 277: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 277/306

5 1 0 G E TL $ : I FL $ = M "T H E N5 1 05 1 1 L = A S C ( L $ )5 1 5 I F L $ = M * "T H E NG O T O5 9 0

5 2 0 I F L < 6 5O R L > 9 1T H E N P $ = P $ + L $ : G O T O5 4 05 3 0 P $ = P $ + M I D $ ( A $ , L - 6 4 , 1 )5 4 0 P R I N TL $ ;

5 8 9 G O T O5 1 0

5 9 0 P R I N T

5 9 1 P R I N TP $

5 9 9 E N D

6 0 0 R E M6 0 1 R E MD E C O D EA M E S S A G E6 0 2 R E M6 1 0 P R I N T " { 2D O W N }T Y P EI N T H E C O D E DM E S S A G E "6 1 2 P R I N T 1 1{ D O W N }E N D T H EM E S S A G EW I T HA ' * ' S I G N 1 1

6 1 5 G E TL $ : I FL $ = M MT H E N6 1 56 1 7 I FL $ = l f * MT H E N6 9 06 2 0 F O RI = * l T O 2 6

6 2 5 I F L $ = M I D $ ( A $ , I , 1 ) T H E N P R I N TM I D $ ( B $ , I , 1 ) ; : G OT O 6 1 5

6 3 0 N E X TI

6 3 5 P R I N TL $ ;

6 4 0 G O T O6 1 56 9 0 E N D1 0 0 0R E MS T A R T I N G S T U F F1 0 1 0A $ = " A B C D E F G H I J K L M N O P Q R S T U V W X Y Z "1 0 1 1B $ = A $1 1 0 0P R I N T M { C L R } { 8D O W N } 1 11 9 9 9 G O T O1 0 0

2 6 5

Page 278: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 278/306

G l o s s a r y

a r g u m e n t

T h ev a r i a b l e ,n u m b e r ,o r s t r i n gt h a ta p p e a r si n t h ep a r e n t h e s e so f af u n c t i o n .

L i k e :

I N T ( N ) h a s N a s a n a r g u m e n t

L E N ( W $ )h a s W $ a s a n a r g u m e n t

a r r a y

A s e to f v a r i a b l e st h a th a v et h es a m en a m e .T h em e m b e r so f t h e a r r a ya r en u m

b e r e d .T h e n u m b e r sa p p e a ri n p a r e n t h e s e sa f t e rt h ev a r i a b l en a m e .S e ea l s os u b

s c r i p t .E x a m p l e s :

A ( 0 ) i s t h ef i r s tm e m b e ro f t h ea r r a yAB $ ( 7 ) i s t h e e i g h t hm e m b e ro f t h ea r r a yB $

C D ( 3 , M + 1 )i s a m e m b e ro f t h ea r r a yC D

a r r o wk e y s

T h e r ea r et w oC R S Rk e y so n t h eC o m m o d o r e6 4 .E a c hh a st w oa r r o w s .T h e r ea r e

t w oo t h e rk e y st h a th a v ea r r o w sa n dp r i n tt h e ma s c h a r a c t e r s .

A S C I I

S t a n d sf o rA m e r i c a nS t a n d a r dC o d ef o rI n f o r m a t i o nI n t e r c h a n g e .E a c hc h a r a c t e r

h a sa n A S C I In u m b e r .

a s s e r t i o n

T h en a m eo f a p h r a s et h a tc a n b et r u eo r f a l s e .T h ep h r a s eA i n a n I F s t a t e m e n ti s

a n a s s e r t i o n .A n a s s e r t i o nh a sa n u m e r i c a l v a l u eo f 0 o r — 1 .S e ea l s oe x p r e s s i o n ,

f a l s e ,l o g i c ,p h r a s eA , t r u e .E x a m p l e :

t h ea s s e r t i o n " A " o " B "i s t r u e

t h ea s s e r t i o n3 = 4 i s f a l s e

b a c k g r o u n d

T h ep a r t o ft h e s c r e e nt h a ti s b l a n k ,n o th a v i n gc h a r a c t e r so n i t .

2 6 6

Page 279: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 279/306

b a s ea d d r e s s

T h eS I Dc h i ph a sr e g i s t e r s( m e m o r yb o x e s )f r o m5 4 2 7 2t o 5 4 3 0 1 .S o i t s b a s ea d

d r e s si s 5 4 2 7 2 ,a n dy o ua d do n n u m b e r sf r o m0 t o 2 9 t o g e tt h ea d d r e s s e s ( b o

l a b e l s )o f t h e v a r i o u sr e g i s t e r s .L i k e w i s e , t h eV I Cc h i ph a sa b a s ea d d r e s s 5 3 2 4

B A S I C

B e g i n n e r ' sA l l - p u r p o s eS y m b o l i cI n s t r u c t i o nC o d e .A c o m p u t e rl a n g u a g eo r i g i

n a t e db y J o h nK e m e n ya n dT h o m a sK u r t za t D a r t m o u t hC o l l e g ei n t h ee a r l y

1 9 6 0 s .

b e l l sa n dw h i s t l e s

A p h r a s e g o i n gb a c kt o t h ee a r l yd a y so f h o b b yc o m p u t i n g .I t m e a n st h ep e r s o n a

c o m p u t e rw a s h o o k e du p t o d o s o m ei n t e r e s t i n go r s p e c t a c u l a rt h i n g s ,l i k ef l a s h

l i g h t so r p l a y m u s i c .

b l a n k

T h ec h a r a c t e rt h a ti s a s p a c e .

b o o t

T h i sm e a n st o s t a r tu p t h ec o m p u t e r f r o m s c r a t c h — a ne a s yt h i n gt o d o w i t hm o d

e r nc o m p u t e r st h a th a v es t a r t - u pp r o g r a m ss t o r e dp e r m a n e n t l yi n R O Mm e m o r y .

I t w a sa n i n v o l v e d p r o c e d u r ei n t h ee a r l y d a y s .N o wi t u s u a l l ym e a n st o r e a di n

t h ed i s ko p e r a t i n gs y s t e m( D O S )p r o g r a m s f r o ma d i s k .

b r a n c h

A p o i n ti n a p r o g r a mw h e r et h e r ei s a c h o i c eo f w h i c hs t a t e m e n tt o e x e c u t e . n e x

A n I F s t a t e m e n ti s a b r a n c h .S o i s a n O N - G O T Os t a t e m e n t .A b r a n c hi s n o tt h e

s a m ea s a j u m p ,w h e r et h e r ei s n o c h o i c e .S e ea l s oj u m p .

b u f f e r

A s t o r a g e a r e ai n m e m o r yf o rt e m p o r a r ys t o r a g e o fi n f o r m a t i o nb e i n gi n p u tt o t h e

c o m p u t e r ' st e m p o r a r ym e m o r yo r o u t p u tf r o mt h ec o m p u t e rt o a d e v i c es u c ha s a

d i s kd r i v e ,a D a t a s s e t t e ,a p r i n t e r ,e t c .

c a l l

U s i n ga G O S U Bc a l l st h es u b r o u t i n e .P u t t i n ga f u n c t i o ni n a s t a t e m e n tc a l l st h e

f u n c t i o n . C a l lm e a n st h ec o m p u t e rg o e sa n dp e r f o r m st h es t a t e m e n t si n t h es u b

r o u t i n e ,o r i t d o e st h ec a l c u l a t i o nt h a tt h e f u n c t i o ni s f o r ,a n dt h e nr e t u r n st o t h e

c a l l i n gs p o t .

2 6 7

Page 280: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 280/306

Page 281: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 281/306

c u r s o r

A m a r k e rt h a ts h o w s w h e r et h en e x tc h a r a c t e ro n t h es c r e e no r i n a s t o r a g eb u f f e r

w i l lb e p l a c e d .C u r s o rm e a n s" r u n n e r . "T h ec u r s o rr u n s a l o n gt h e s c r e e na s y o u

t y p e .T h e r ea r et w ok i n d so f c u r s o r si n t h eC o m m o d o r e6 4 c o m p u t e r :

I N P U Tc u r s o r a f l a s h i n gs q u a r eo n t h e s c r e e n

P R I N Tc u r s o r i n v i s i b l e ," s h o w s "w h e r en e x tc h a r a c t e rw i l lb e p r i n t e d

d a t a

B A S I Ch a st w ok i n d so f d a t a :n u m e r i ca n ds t r i n g .L o g i c a ld a t a( t r u e , f a l s e )i s a

t y p eo f n u m e r i cd a t a .

d e b u g

T o r u na p r o g r a mt o f i n dt h ee r r o r sa n df i xt h e m .Y o uf i xt h ee r r o r sb y e d i t i n gt h e

p r o g r a m .S e ea l s oe d i t .

d e l a yl o o p

A p a r t o ft h ep r o g r a mt h a tu s e su p t i m ea n dd o e sn o t h i n ge l s e .E x a m p l e :

3 0 F O RT = lT O2 0 0 0 : ] S r E X TT

e d i t

T h e r ea r et w ok i n d s : e d i t i n ga l i n ea n de d i t i n g ap r o g r a m .I n e i t h e rk i n d ,y o ua r e

r e t y p i n gp a r t so f i t t o c o r r e c ti t .

e d i tm o d e

W h e nR E A D Y ,a n dt h ef l a s h i n gc u r s o rs h o w ,y o ua r ei n t h ee d i tm o d e .T h ec o m

p u t e ra w a i t sc o m m a n d so r t h e e n t e r i n go f p r o g r a ml i n e s .

e n t e r

T o p u ti n f o r m a t i o ni n t ot h ec o m p u t e rb y t y p i n g ,t h e np r e s s i n gt h eR E T U R Nk e y .

T h ei n f o r m a t i o ng o e si n t ot h ei n p u tb u f f e ra s i t i s t y p e d .W h e nR E T U R Ni s

p r e s s e d , t h ec o m p u t e ru s e st h ei n f o r m a t i o no r s t o r e si t a s p a r t o f ap r o g r a m .

e r a s e

T o d e s t r o yi n f o r m a t i o ni n m e m o r yo r w r i t eb l a n k st o t h es c r e e n .S e ea l s oc l e a r .

2 6 9

Page 282: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 282/306

e r r o rt r a p

P a r t o f ap r o g r a mt h a tc h e c k sf o rm i s t a k e si n i n f o r m a t i o nt h a tt h eu s e rh a se n

t e r e d ,o r c h e c k st o s e ei f c o m p u t e dr e s u l t sa r ew i t h i n r e a s o n a b l eb o u n d s .

e x e c u t e

T o r u na p r o g r a m ,o r t o p e r f o r ma s i n g l ec o m m a n do r s t a t e m e n t .

e x p r e s s i o n

A p o r t i o no f a s t a t e m e n tt h a th a sa s i n g l e v a l u e ,e i t h e ra n u m b e ro r a s t r i n g .S e e

a l s ov a l u e .E x a m p l e s :

7 * X + 1

" D O P E" < >MA $ + " H A T "

f a l s e

T h en u m b e r0 . S e ea l s oa s s e r t i o n ,l o g i c ,t r u e .

f o r k i nt h er o a d

D e s c r i b e sa b r a n c hp o i n ti n t h ep r o g r a m .S e ea l s ob r a n c h .

f u n c t i o n

B A S I Ch a sa n u m b e ro f b u i l t - i nf u n c t i o n s .E a c hf u n c t i o nh a sa n a m ef o l l o w e db y

p a r e n t h e s e s .I n t h ep a r e n t h e s e sa r eo n eo r m o r ea r g u m e n t s .T h ef u n c t i o nh a sa

s i n g l ev a l u e( n u m e r i co r s t r i n g )d e t e r m i n e db y i t s a r g u m e n t s .S e ea l s oa r g u m e n t ,v a l u e .T h ef u n c t i o n st r e a t e di n t h i sb o o ka r e :

A S C ,C H R $ ,I N T ,L E N ,E N D ,L E F T $ ,M I D * ,

R I G H T ! ,S T R $ ,V A L ,T A B ,P E E K

g a r b a g e

A r a n d o mm e s so f c h a r a c t e r si n m e m o r y .U s u a l l yd u et o h u m a no r m a c h i n ee r r o r .

g r a p h i c s

P i c t u r ed r a w i n g .

i n d e x

A n a r r a yn a m ei s f o l l o w e db y o n eo r m o r en u m b e r so r n u m e r i cv a r i a b l e si n

p a r e n t h e s e s .E a c hn u m b e ri s a n i n d e x .A n o t h e rw o r df o ri n d e xi s s u b s c r i p t .

Q ( 7 , J ) :7 a n dJ a r e i n d i c e s

2 7 0

Page 283: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 283/306

m e n u

A l i s to f c h o i c e ss h o w no n t h es c r e e n .E a c hc h o i c eh a sa l e t t e ro r n u m b e rb e s i d e

i t . T h ep r o g r a mu s e rp r e s s e s ak e yt o p i c kw h i c hc h o i c ei s w a n t e d .

m e s s a g e

A s t a t e m e n tt h a tt e l l sw h a ti s e x p e c t e di n a n I N P U Ts t a t e m e n t .F o re x a m p l e :

6 1 I N P U T" A G E " ; A

m o n i t o r

H a st w om e a n i n g s .W eu s ei t t o m e a na b o xw i t ha T V - t y p es c r e e nt h a ti s c o n

n e c t e dt o t h ec o m p u t e r .I t d i s p l a y st e x ta n dg r a p h i c sb u t c a n n o tr e c e i v et e l e v i s i o

p r o g r a m s .I n m a c h i n el a n g u a g ep r o g r a m m i n g ,a m o n i t o ri s a c o n t r o lp r o g r a m .

n e s t i n g

W h e no n et h i n gi s i n s i d ea n o t h e r .I n ap r o g r a mw e n e s tl o o p s .I n s i d ea s t a t e m e n t

w e c a nn e s t e x p r e s s i o n so r f u n c t i o n s .

L = I I T T ( L E N ( P $ ) + 3 )n e s t e df u n c t i o n s

X = 5 * ( 6 + ( 7 * ( 8 + K ) ) )n e s t e d p a r e n t h e s e s

n u m b e r

O n et y p eo f i n f o r m a t i o ni n B A S I C .T h eo t h e ri s s t r i n g .T h en u m b e r sa r eg e n e r a l l

d e c i m a ln u m b e r s .S e ea l s oi n t e g e r s ,s t r i n g .

o p e r a t i o n

I n a r i t h m e t i c :a d d i t i o n , s u b t r a c t i o n ,m u l t i p l i c a t i o n ,a n dd i v i s i o n ,w i t hs y m b o l s+ ,

— , * , a n d/ . T h eo n l yo p e r a t i o nf o r s t r i n g si s c o n c a t e n a t i o n .

p h r a s eAA p h r a s ei n t h i sb o o kt h a ts t a n d sf o ra n a s s e r t i o ni n a n I F s t a t e m e n t . S e ea l s o

a s s e r t i o n .E x a m p l e :

I P A > 4 T H E N5 0 0 A > 4i s " p h r a s eA "

p i t c h

T h en u m b e r sp o k e di n t ot h eS I Dc h i pt h a tt e l lt h em u s i c a lp i t c ho f t h es o u n d .

P i t c hi s t h es a m ea s n o t ea n dc a nb e h i g ho r l o w .

2 7 3

Page 284: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 284/306

p i x e l

P i c t u r ee l e m e n t .T h es m a l l e s td o tt h a ti s p l a c e do n t h es c r e e ni n a g r a p h i c sm o d e .

p o i n t e r

A n u m b e ri n m e m o r yt h a tt e l l sw h e r ei n t h el i s t so f D A T Ay o ua r ea t t h ep r e s e n t

m o m e n t .A l s o ,t h en u m b e ri n a p o i n t e rb o xt h a tt e l l sa s p r i t ew h i c hb l o c kc o n

t a i n si t s p i c t u r e .

p r o g r a m

T h eu s u a lp r o g r a mi s a l i s to f n u m b e r e dl i n e sc o n t a i n i n gs t a t e m e n t s .T h ec o m

p u t e re x e c u t e s t h es t a t e m e n t si n o r d e rw h e nt h eR U Nc o m m a n di s e n t e r e d .T h e

p r o g r a mi s s t o r e di n a s p e c i a lp a r t o fm e m o r y . O n l yo n e p r o g r a mc a n b es t o r e da t

a t i m e .

p r o m p t

A m e s s a g ey o up u to n t h e s c r e e nw i t ha n I N P U Tt o r e m i n dt h eu s e rw h a tk i n do f

a n s w e ry o ue x p e c t .I t s n a m ec o m e sf r o mt h eh i n tt h a t a c t o r si n a p l a yg e tf r o m

t h ep r o m p t e ri f t h e yf o r g e tt h e i rl i n e s .

p s e u d o r a n d o m

A n u m b e rt h a ti s c a l c u l a t e di n s e c r e tb y t h ec o m p u t e ru s i n gt h eR N Df u n c t i o n .I t

i s u s u a l l yc a l l e da r a n d o mn u m b e r .P s e u d o r a n d o me m p h a s i z e st h a tt h en u m b e r

r e a l l yi s n o tr a n d o m( s i n c ei t i s c a l c u l a t e db y a k n o w nm e t h o d )b u ti s j u s tn o t

p r e d i c t a b l eb y t h ec o m p u t e ru s e r .

r a n d o m

N u m b e r st h a tc a n n o tb e p r e d i c t e d ,l i k et h en u m b e r st h a ts h o wa f t e rt h er o l lo f

d i c e ,o r t h en u m b e ro f h e a d sy o ug e ti n t o s s i n g a c o i n t e nt i m e s .

r e g i s t e r

A m e m o r yb o xc o n t a i n e di n t h eV I Co r t h eS I Dc h i p .T h en u m b e ry o up u ti n t h e

b o xc o n t r o l ss o m ea c t i o no f t h ec h i p .

r e m a r k

A c o m m e n ty o um a k ei n t h ep r o g r a mb y p u t t i n gi t i n a R E Ms t a t e m e n t .E x a m p l e

R E Mt h e g r a p h i c s s e t u ps u b r o u t i n e

2 7 4

Page 285: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 285/306

i n t e g e r s

T h ew h o l en u m b e r s ,p o s i t i v e ,n e g a t i v e ,a n dz e r o .

I / O

I n p u t / O u t p u t .I n p u tf r o mk e y b o a r d ,D a t a s s e t t e ,d i s kd r i v e ,e t c .O u t p u tt o s c r e e n ,

p r i n t e r ,D a t a s s e t t e ,d i s kd r i v e ,e t c .

j o y s t i c k

A d e v i c eu s e di n g a m e s .I t i s l i k et h ec o n t r o ls t i c ku s e di n e a r l ya i r p l a n e s .I t c a n

d e t e c te i g h td i f f e r e n td i r e c t i o n s ,a s w e l la s c e n t e r e d .

j u m p

T h eG O T Os t a t e m e n tm a k e st h ec o m p u t e rj u m pt o a n o t h e rl i n ei n t h ep r o g r a m

r a t h e rt h a ne x e c u t et h en e x tl i n e .

l i n e

L i n e ss t a r tw i t ha n u m b e rf o l l o w e db y a s t a t e m e n tw h i c hm a yc o n t a i ne x

p r e s s i o n s ,e t c .

p a r t s o fa l i n e :

1 6 I P 7 < = I N T ( Z )T H E NP R I N TL E N ( Q $+ " R " ) + 2 ; " R A T " : G 0 T 04 0

1 6 l i n en u m b e r

I P 7 < = I N T ( Z )T H E NP R I N T . . . " R A T "s t a t e m e n t

G O T O4 0 s t a t e m e n t

7 < = I N T ( Z ) a n a s s e r t i o n

7 < = I N T ( Z ) a n e x p r e s s i o n

L E N( Q $+ " R " ) + 2 ; " R A T " a n e x p r e s s i o n

Q $ ; " R " a n e x p r e s s i o n

I N T ( Z ) a f u n c t i o n

L E N ( Q $ ) a f u n c t i o n

Z a r g u m e n t

Q $+ " R " a r g u m e n t

7 , " R " ,2 , " R A T " c o n s t a n t s

< = , + o p e r a t i o n s

I P , I N T ,T H E N ,P R I N T , L E N ,G O T O r e s e r v e dw o r d s

l i n eb u f f e r

T h es t o r a g es p a c et h a tr e c e i v e st h ec h a r a c t e r sy o ut y p ei n . S e ea l s ob u f f e r .

2 7 1

Page 286: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 286/306

l i n e e d i t

R e t y p i n gp a r t so f al i n et o c o r r e c ti t .

l i n e f e e dM o v i n gt h ec u r s o rs t r a i g h td o w nt o t h e n e x tl i n e .T h eA S C I In u m b e r1 0 s i g n a l s

t h i sc o m m a n dt o t h es c r e e no r p r i n t e r .S e ea l s oc a r r i a g e r e t u r n ,C R L F .

l i n en u m b e r

T h en u m b e ra t t h eb e g i n n i n go f a p r o g r a ml i n e .T h el i n en u m b e rt e l l st h ec o m

p u t e rw h e r et o s t o r et h el i n e .

l i s t i n g

A l i s to f a l l t h el i n e si n a p r o g r a m .

l o a d

T o t r a n s f e rt h ei n f o r m a t i o ni n a f i l eo n t a p e o r d i s kt o t h et e m p o r a r ym e m o r yo f

t h ec o m p u t e rb y u s i n gt h eL O A Dc o m m a n d .

l o g i c

T h ep a r to f a p r o g r a mt h a tc o m p a r e sn u m b e r so r s t r i n g s .T h er e l a t i o n s= , < > ,< ,

> , < = ,a n d> = a r eu s e d .S e ea l s oa s s e r t i o n ,p h r a s eA .

l o o p

A p a r t o ft h ep r o g r a mt h a ti s r e p e a t e do v e ra n do v e ra g a i n .T h e r ea r et w ok i n d so f l o o p s :F O R - N E X Tl o o p s ,h o m e m a d el o o p st h a tu s eI F s t a t e m e n t sw i t ha l o o p

v a r i a b l e ,a n dG O T Os t a t e m e n t s .

l o o pv a r i a b l e

T h en u m b e rt h a tc h a n g e sa s t h el o o pi s r e p e a t e d .F o r e x a m p l e :

4 0 F O R1 = 1T O5

5 0 N E X TI : R E MI i s t h e l o o p v a r i a b l e

m e m o r yT h ep a r to f t h ec o m p u t e rw h e r ei n f o r m a t i o ni s s t o r e d .M e m o r yi s m a d eo f s e m i

c o n d u c t o rc h i p s ,b u tw e t h i n ko f i t a s b o x e s w i t hl a b e l so n t h ef r o n ta n di n f o r

m a t i o ni n s i d e .

2 7 2

Page 287: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 287/306

r e s e r v e dw o r d s

A l i s to f w o r d sa n da b b r e v i a t i o n st h a tB A S I Cr e c o g n i z e sa s c o m m a n d s ,s t a t e -

m e n t s ,o r f u n c t i o n s .T h er e s e r v e dw o r d sc a n n o tb e u s e da s v a r i a b l en a m e s .

r e t u r na v a l u e

W h e na f u n c t i o ni s u s e d( c a l l e d ) ,i t s s p o ti n t h ee x p r e s s i o ni s r e p l a c e dw i t ha

v a l u e( a n u m b e ro r as t r i n g ) .T h i si s c a l l e dr e t u r n i n ga v a l u e .

r o w

M a t e r i a la r r a n g e dh o r i z o n t a l l y( a c r o s s ) .S e ea l s oc o l u m n .

R U Nm o d e

T h ea c t i o no f t h ec o m p u t e rw h e ni t i s e x e c u t i n ga p r o g r a mi s c a l l e do p e r a t i n gi n

t h eR U Nm o d e .Y o ug e ti n t ot h eR U Nm o d ef r o mt h ee d i tm o d eb y e n t e r i n g

R U N .W h e nt h ec o m p u t e re n d st h ep r o g r a mf o ra n yr e a s o n ,i t r e t u r n st o t h ee d i t

m o d e .

s a v e

T o p u tt h ep r o g r a mt h a ti s i n t h ec o m p u t e r ' sm e m o r yo n t a p eo r d i s k .

s c r e e n

T h eT Vs c r e e no r as i m i l a ro n ei n a m o n i t o rt h a ti s h o o k e d u pt o t h ec o m p u t e r .

S e ea l s om o n i t o r .

s c r o l l i n g

T h eu s u a lw a yt h ec o m p u t e rw r i t e st o t h ef u l ls c r e e ni s t o p u tt h en e wl i n e a tt h e

b o t t o mo f t h es c r e e na n dp u s ha l l t h e o l dl i n e su p .T h i si s c a l l e ds c r o l l i n g .

s i m p l ev a r i a b l e

A v a r i a b l et h a ti s n o ta n a r r a yv a r i a b l e .

s t a c k

A d a t a t y p eu s e di n m a c h i n el a n g u a g ep r o g r a m m i n g .T h ed a t ai s a r r a n g e di n a

c o l u m n ,a n dt h e l a s to n ep u to n i s t h ef i r s to n et a k e no f f .

2 7 5

Page 288: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 288/306

s t a r t i n gs t u f f

I s t h en a m eg i v e ni n t h i sb o o kt o i n i t i a l i z a t i o nm a t e r i a li n a p r o g r a m .I t i n c l u d e s

R E M sf o rd e s c r i b i n g t h ep r o g r a m ,i n p u to f i n i t i a lv a l u e so f v a r i a b l e s ,s e t u po f a r

r a yd i m e n s i o n s ,d r a w i n gs c r e e ng r a p h i c s ,a n d a n yo t h e rt h i n g st h a tn e e dt o b e

d o n ej u s to n c ea t t h eb e g i n n i n go f ap r o g r a mr u n .

s t a t e m e n t

T h es m a l l e s tc o m p l e t es e c t i o n o f ap r o g r a m .I t s t a r t sw i t ha r e s e r v e dw o r d .

s t o r e

T o p u ti n f o r m a t i o ni n m e m o r yo r t o s a v ei t o n t a p eo r d i s k .

s t r i n g

A t y p eo f d a t ai n B A S I C .I t c o n s i s t s o f ar o wo f c h a r a c t e r s .S e ea l s on u m b e r .

s u b r o u t i n e

A s e c t i o no f a p r o g r a mt h a ts t a r t sw i t ha l i n ec a l l e df r o ma G O S U Bs t a t e m e n ta n d

e n d sw i t ha R E T U R Ns t a t e m e n t .I t m a yb e c a l l e df r o mm o r et h a no n ep l a c ei n

t h ep r o g r a m .

s u b s c r i p t

A n u m b e ri n t h ep a r e n t h e s e so f a n a r r a y .I t t e l l sw h i c hm e m b e ro f t h ea r r a yi s

b e i n gu s e d .S e ea l s oi n d e x .

s y n t a x

T h ew a ya s t a t e m e n ti n B A S I Ci s s p e l l e d .A s y n t a xe r r o rm e a n st h es p e l l i n go f a

r e s e r v e dw o r do r v a r i a b l en a m ei s w r o n g ,t h ep u n c t u a t i o ni s w r o n g ,o r t h eo r d e r

o f p a r t si n t h el i n ei s w r o n g .

t i m i n gl o o p

A l o o pt h a td o e sn o t h i n ge x c e p tu s eu p a c e r t a i na m o u n to f t i m e .S e ea l s od e l a y

l o o p .

t i t l e

T h en a m eo f ap r o g r a mo r s u b r o u t i n e .P u ti t i n a R E Ms t a t e m e n t .

t r u e

H a st h ev a l u e— 1 . S e ea l s oa s s e r t i o n ,f a l s e ,l o g i c .

2 7 6

Page 289: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 289/306

t r u n c a t e

T o c u to f ft h ed e c i m a lp a r to f a n u m b e r ,l e a v i n ga n i n t e g e r .T h eI N T ( )f u n c t i o n

d o e st h i sf o rp o s i t i v en u m b e r s .

P r e s s i n gk e y so n t h ec o m p u t e r .I t i s d i f f e r e n tf r o me n t e r i n g .S e ea l s o e n t e r .

v a l u e

T h ev a l u eo f av a r i a b l ei s t h en u m b e ro r s t r i n gs t o r e di n t h em e m o r yb o xb e l o n g

i n gt o t h ev a r i a b l e .S e ea l s ov a r i a b l e .

v a r i a b l e

A n a m eg i v e nt o a b o xi n m e m o r y . T h eb o xh o l d sa v a l u e .W h e nt h ec o m p u t e r

s e e s a v a r i a b l en a m ei n a n e x p r e s s i o n ,i t g o e st o t h eb o xa n dt a k e s ac o p yo f w h a ti s i n t h eb o xb a c kt o t h e e x p r e s s i o na n dp u t si t w h e r et h ev a r i a b l en a m ew a s ,a n d

c o n t i n u e st o e v a l u a t e t h ee x p r e s s i o n .S e ea l s ov a r i a b l en a m e .

v a r i a b l e ,a r r a y

S e ea r r a y .

v a r i a b l e ,s i m p l e

S e es i m p l ev a r i a b l e .

v a r i a b l en a m eA v a r i a b l ei s e i t h e ra s t r i n gv a r i a b l e o r an u m e r i cv a r i a b l e . T h en a m et e l l sw h i c h .

S t r i n gv a r i a b l e sh a v en a m e se n d i n gi n a d o l l a rs i g n( $ ) .N u m e r i cv a r i a b l e sd o n o t .

T h ev a r i a b l en a m ec a nh a v e a n yn u m b e ro f c h a r a c t e r s ,b u to n l yt h ef i r s tt w oa r e

k e p tb y t h ec o m p u t e rw h e nm a k i n gi t s v a r i a b l et a b l e .T h ef i r s tc h a r a c t e rm u s tb e

a l e t t e r ,t h er e s tc a nb e l e t t e r so r n u m b e r s .

2 7 7

Page 290: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 290/306

E r r o rM e s s a g e s

B A DD A T A

Y o ur e a da t a p eo r d i s kf i l ew h i c hw a ss u p p o s e dt o h a v en u m e r i cd a t a .B u ti t

f o u n ds o m es t r i n gc h a r a c t e r s .

B A DS U B S C R I P T

Y o um a d ea n e r r o ru s i n ga n a r r a y ,l i k e :

D I MA ( 5 , 5 ) : A ( 1 , 1 , 1 ) = 7 7W r o n gn u m b e ro f s u b s c r i p t s ,o r

D I MA ( 5 ) :A ( 1 4 ) = 7 S u b s c r i p tw a sl a r g e rt h a n5 .

C A N ' TC O N T I N U E

Y o uu s e dt h eC O N Tc o m m a n dw h e ni t w a sn o ta l l o w e d .

D E V I C EN O TP R E S E N T

Y o ua s k e df o ra n I / Od e v i c e( t a p e , d i s k , p r i n t e r ,e t c . )t h a tw a sn o tp r e s e n t .

S t a t e m e n t sO P E N ,C L O S E ,C M D ,P R I N T * ,I N P U T * ,o r G E T #m a yg i v et h i s .

W eh a v en o tt r e a t e dt h e s es t a t e m e n t si n t h i sb o o k .

D I V I S I O NB Y Z E R O

Y o ud i v i d e db y z e r o .O r y o ud i v i d e db y a v a r i a b l ew h o s ev a l u ew a sz e r o .

E X T R AI G N O R E D

A c o m m aw a sf o u n do n a n I N P U Ts t a t e m e n t .P r o g r a mc o n t i n u e sa n y w a y .

F I L EN O TF O U N D

Y o uw e r el o o k i n gf o ra f i l eo n t a p e ,a n dt h e e n d - o f - t a p em a r k e rw a sf o u n d ,o r

t h ef i l ei s n o to n t h i sd i s k .

F I L EN O TO P E N

Y o um u s tO P E Na f i l eb e f o r ey o uu s eC L O S E ,C M D ,P R I N T * ,I N P U T * ,o r

G E T * .

2 7 8

Page 291: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 291/306

F I L EO P E N

Y o ut r i e dt o O P E Na f i l eu s i n ga n u m b e ro f a f i l ea l r e a d yo p e n .

F O R M U L AT O O C O M P L E X

Y o uw r o t ea s t r i n ge x p r e s s i o nt h a tn e e d st o b e s p l i ti n t op a r t s .

I L L E G A LD I R E C T

Y o uu s e dD A T A ,I N P U T ,G E T ,o r D E FF N i n t h ee d i tm o d e .

I L L E G A La U A N T I T Y

Y o um a d eo n eo f t h e s ee r r o r s :

Y o uu s e da n e g a t i v en u m b e ra s a n a r r a ys u b s c r i p t ,l i k e :

L E T A ( - l )= 3 4

Y o uu s e da f u n c t i o nw i t ht h ew r o n gk i n do f a r g u m e n t ,l i k e :

W r o n g :L = V A L ( R ) C o r r e c t :L = V A L ( R $ )

W r o n g :T A B ( - 3 ) C o r r e c t :T A B ( 3 )

W r o n g :S P E E D = 4 0 0 C o r r e c t :S P E E D = 8 5 5

W r o n ga r g u m e n t sm a yb e a s t r i n gw h e r ea n u m b e ri s n e e d e d ,o r a n u m b e r

w h e r ea s t r i n gi s n e e d e d ,o r a n e g a t i v en u m b e rw h e r ea p o s i t i v eo n ei s n e e d e d ,

o r an u m b e rt h a ti s b i g g e rt h a na l l o w e d .

L O A D

S o m e t h i n gi s w r o n gw i t ht h ep r o g r a m o nt a p e .

N E X T W I T H O U TF O R

Y o uu s e da N E X Tb e f o r et h ec o m p u t e rr e a c h e da F O Rs t a t e m e n t .O r y o uu s e dt h ew r o n gn a m ef o rt h ev a r i a b l e ,l i k e :

F O R1 = 1T O 5

N I X T M

2 7 9

Page 292: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 292/306

N O TI N P U TF I L E

Y o uo p e n e da f i l ef o ro u t p u t b u tt r i e d t og e td a t af r o mi t w i t ha G E To r a n I N

P U T .

N O TO U T P U TF I L E

Y o uo p e n e da f i l ef o ri n p u tb u tt r i e dt o P R I N Tt o i t .

O U TO F D A T A

Y o ut r i e dt o R E A Da f t e ry o u h a da l r e a d yr e a da l l t h ed a t ai n t h eD A T As t a t e

m e n t si n t h ep r o g r a m .

O U TO F M E M O R YU s u a l l y ,i t m e a n sy o uh a v en e s t e dt o om a n y F O R - N E X Tl o o p so r t o om a n y

s u b r o u t i n e si n s i d ee a c ho t h e r ,o r a n e x p r e s s i o nh a st o om a n yp a r e n t h e s e s .

O V E R F L O W

Y o ud i da c a l c u l a t i o nw h i c h h a da v e r yl a r g ea n s w e r ,t o o b i gf o rt h ec o m p u t e r

t o h a n d l e .

R E D I M ' DA R R A Y

Y o um a d eo n eo f t h e s ee r r o r s :

Y o uu s e d a na r r a yb e f o r ey o ud i dt h eD I M e n s i o ns t a t e m e n tf o ri t , l i k e :

L E TA ( 3 )= 7 : D I MA ( 2 0 )

o r y o ue x e c u t e dD I Mt w i c ef o rt h es a m ea r r a y ,l i k eg o i n gt h r o u g ht h eD I Ml i n e

t w i c e .

R E D OF R O MS T A R T

O n a n I N P U Ts t a t e m e n t , t h ec o m p u t e r f o u n dl e t t e r so r p u n c t u a t i o nw h e ni t e x

p e c t e d o n l yn u m b e r s .S t a r te n t e r i n g d a t a a g a i nf r o mt h eb e g i n n i n go f t h eI N

P U Tl i s t .

2 8 0

Page 293: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 293/306

Page 294: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 294/306

T o p i c a lI n d e x

a c t i o ng a m e s1 9 3 - 2 0 2

a d d i n ga p r o g r a ml i n e2 1a d d i t i o n6 9 - 7 3

A D S R1 2 9 ,1 3 5 ,2 0 3 ,2 0 7 - 9

a r g u m e n t7 5 , 7 8 ,1 9 1 ,2 6 6

a r i t h m e t i c6 9 - 7 3

a r r a y2 1 0 - 1 8 ,2 6 6

a r r o wk e y s2 6 6

A S C I In u m b e r1 9 3 , 1 9 5 ,2 6 6

a s s e r t i o n2 6 6

a t t a c k 1 2 9 ,2 0 7 - 9

b a c k g r o u n d1 , 5 , 1 4 5 ,2 6 6

b a c k g r o u n dc o l o r1 0 ,1 2 - 1 3 ,3 0 , 1 4 7

B A DD A T A E R R O Rm e s s a g e 2 7 8

B A DS U B S C R I P TE R R O Rm e s s a g e2 1 ,2 7 8b a s e a d d r e s s2 6 7

B A S I C2 6 7

b e l l sa n dw h i s t l e s1 0 ,2 6 7

b l a n k2 6 7

b o o t2 6 7

b o r d e rc o l o r1 4 5 ,1 4 7

b r a n c h6 2 - 6 3 ,2 6 7

b u f f e r2 6 7

b u g s 2 4 2

c a l l2 6 7

C A N TC O N T I N U EE R R O Rm e s s a g e2 7 8

c a r r i a g er e t u r n2 6 8

c a s s e t t e 9 7 ,2 4 5c h a n g i n ga p r o g r a ml i n e 2 2 ,2 8

c h a r a c t e r2 6 8

c h a r a c t e rc o l o rs e el e t t e rc o l o r

c h a r a c t e r s ,g r a p h i c s2 8 , 3 6 ,1 4 5

c l e a r2 6 8

c l e a r i n gt h e s c r e e n 3 - 4 ,2 3

c l o c k1 8 5

c o - o r d i n a t en u m b e r s1 5 6

c o l l i s i o n2 2 8

c o l o n4 2 , 1 0 1 ,1 0 6 - 9

c o l o rc e l l s1 5 2

c o l o rc o d e s 1 4 8

c o l o rg r a p h i c s1 4 5 - 5 1c o l o rk e y s1 0

c o l o rm e m o r y1 5 4 - 5 8

c o l u m n 2 8 7

c o m m a3 2 ,3 6 ,4 2 , 1 0 5

c o m m a n d2 8 7

c o m m a n d s1 1 0

C o m m o d o r e6 4 U s e r ' sG u i d e2 0 3 ,2 2 3

c o n c a t e n a t i o ns e eg l u i n g

c o n d i t i o n s6 1 - 6 5 , 8 2 - 8 3 ,1 7 2 - 7 9c o n s t a n t3 7 , 2 6 8

c o p y i n gp r o g r a ml i n e s3 0

C R L F2 6 8

C T R Lk e y1 2

c u r s o r1 2 ,2 5 - 3 1 , 1 1 3 - 1 4 ,2 2 3 ,2 6 9

c u r s o rk e y s 2 5 - 3 1 ,2 2 3

d a t a2 6 8

d e b u g g i n g2 3 6 - 4 2 ,2 6 8

d e c a y1 2 9 ,2 0 7 - 9

d e l a yl o o p s7 4 ,7 8 - 7 9 ,1 1 9 ,2 6 8

D E V I C EN O TP R E S E N TE R R O Rm e s s a g e2 7 8

d e v i c en u m b e r9 7

D I Ms t a t e m e n t2 1 0 ,2 1 2 - 1 3d i s k9 4 - 1 0 0

d i s kc a r e2 4 3 - 4 5

d i s kd i r e c t o r y9 7 - 9 8

d i s k d r i v e9 6 ,1 0 0

d i v i s i o n6 9 - 7 3

D I V I S I O NB YZ E R OE R R O Rm e s s a g e2 7 8

e d i t2 6 8

e d i tm o d e1 3 7 ,1 4 1 ,2 3 8 ,2 6 8

e m p t ys t r i n g1 6 2

e m p t y i n gm e m o r y5

e n t e r2 6 8

e n t e r i n ga p r o g r a ml i n e6

e q u a ls i g n6 6 ,7 1 - 7 3e r a s e2 6 8

e r a s i n gp r o g r a ml i n e s2 0 - 2 1

e r a s i n g ,I N S T / D E LK E Ya n d2 9 - 3 0

e r a s i n g ,s p a c e sa n d1 1 6

e r r o rm e s s a g e4 2 ,6 7 , 7 0 , 7 7 ,1 0 5 , 1 2 7 ,2 7 8 - 8 1

e r r o r t r a p2 7 0

e x e c u t e2 7 0

e x p r e s s i o n2 7 0

E X T R AI G N O R E DE R R O Rm e s s a g e4 2 , 1 0 5

f a l s e1 7 2 ,1 7 4 - 7 9 ,2 7 0

1 5 4 1d i s k d r i v e1 0 0

F I L EN O T F O U N DE R R O Rm e s s a g e 2 7 8

F I L EN O TO P E NE R R O Rm e s s a g e2 7 8F I L EO P E NE R R O Rm e s s a g e2 7 9

f i l e n a m e9 4 ,9 9 - 1 0 0

f i l e n a m e s9 9

f i l e n a m e s ,i l l e g a l9 9 ,1 0 0

f i l e s9 4 - 1 0 0

F O R - N E X Tl o o p s1 1 7 - 2 2

2 8 2

Page 295: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 295/306

V

F O R M U L AT O OC O M P L E XE R R O Rm e s s a g e

2 7 9

f u n c t i o n6 6 ,7 4 - 7 5 , 7 6 - 7 7 ,8 7 ,8 9 - 9 0 , 9 0 - 9 1 ,

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

f u n c t i o n k e y s1 9 3 ,1 9 5 - 2 0 2

f u n c t i o n s1 9 0 - 9 2

g a r b a g e2 7 0

g l u i n gs t r i n g s4 6 - 4 9 ,1 8 2

g r a p h i c s 3 - 4 ,2 3 , 2 8 , 3 6 ,1 1 1 - 1 6 ,1 4 5 - 5 1 ,1 5 2 ,

2 1 9 - 2 8 ,2 7 0

g r a p h i c sc h a r a c t e r s2 8 , 3 6 ,1 4 5

h o m e1 6

i l l e g a lf i l e n a m e s9 9 ,1 0 0

I L L E G A L D I R E C TE R R O Rm e s s a g e 2 7 9

I L L E G A LQ U A N T I T YE R R O Rm e s s a g e7 7 ,

2 7 9i n d e x2 1 ,2 7 0

i n p u t1 0 4

i n p u tc u r s o r2 7

I N S T / D E Lk e y2 9 - 3 0 ,5 6

i n t e g e r s2 7 1

I / O2 7 1

j i f f y1 4 3

j i f f yc l o c k 1 3 7 , 1 4 3 ,1 8 6

j o y s t i c k2 7 1

j u m p2 7 1

k e y b o a r d1 2 5 , 1 5 9 ,1 6 1 - 6 2 ,1 9 5 ,1 9 7

l e g a lf i l e n a m e s9 9

l e t t e rc o l o r5 , 1 2 - 1 4 ,1 1 4 ,1 4 9

l i n e2 7 1

l i n eb u f f e r 1 4 2 , 1 5 9 ,2 7 1

l i n en u m b e r s8 , 1 4 3 ,2 7 2

l i n e f e e d2 7 2

l i s t i n g2 7 2

l i s t s2 1 0

l o a d2 7 2

L O A DE R R O Rm e s s a g e2 7 9

l o a d i n gf r o mc a s s e t t e2 4 5

l o a d i n gf r o md i s k9 7 - 9 8

l o g i c2 7 2

l o g i c a ls i g n s1 7 8

l o o p1 2 1 ,2 3 1 - 3 2 ,2 7 2

l o o pv a r i a b l e s 1 2 1 ,2 7 2

l o o p s1 1 8 ,1 1 9 - 2 2

m a i nl o o p2 3 1 - 3 2

m e m o r y1 , 5 , 1 9 - 2 1 ,2 7 2

m e m o r yb o x e s2 0 - 2 1 ,4 6 , 6 9 ,1 3 3 ,1 4 3 ,

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

2 2 5

m e n u2 7 3

m e s s a g e2 7 3

m o n i t o r2 7 3

m o v i n gp i c t u r e s1 1 1 - 1 6 ,2 1 9 - 2 8m o v i n gt h e c u r s o r1 1 3 - 1 4

m u l t i p l ei n p u t1 0 4

m u l t i p l i c a t i o n6 9 - 7 3

m u s i c 2 0 3 - 9

n e s t i n g2 7 3

n e s t e dI F s t a t e m e n t s 8 3

n e s t e d l o o p s1 1 8 - 2 2

N E X TW I T H O U TF O RE R R O Rm e s s a g e2 7 9

N O TI N P U TF I L EE R R O Rm e s s a g e2 8 0

N O TO U T P U TF I L EE R R O Rm e s s a g e2 8 0

N O To p e r a t o r1 7 2 ,1 7 7 - 7 8

n u m b e r s6 6 - 7 3 , 8 0 - 8 3 ,1 6 3 ,1 7 4 - 7 6 , 1 8 9

2 7 3n u m e r i cv a r i a b l e s6 7 ,6 8 - 7 1 ,2 1 2

n y b b l e 2 0 3

o c t a v e1 3 3 ,2 0 6

o p e r a t i o n2 7 3

O U TO FD A T AE R R O Rm e s s a g e1 2 7 ,2 8 0

O U TO FM E M O R YE R R O Rm e s s a g e2 8 0

O V E R F L O WE R R O Rm e s s a g e2 8 0

p h r a s eA 2 7 3

p i t c h2 7 3

p i x e l2 7 4

p o i n t e r1 2 3 ,1 2 7 - 2 8 ,2 2 4 ,2 7 4

P O K E i n gg r a p h i c s1 5 3 - 5 8

p r o g r a m7 - 8 ,2 7 4

p r o g r a ml i n e s ,c h a n g i n g2 2 ,2 8

p r o g r a ml i n e s ,c o p y i n g3 0

p r o g r a m m e r4 3

p r o g r a m s , d e m o n s t r a t i o n2 4 7 - 6 5

p r o m p t2 3 3 ,2 7 4

p d dt c - c m p s e u d o r a n d o mn u m b e r s8 7 ,2 7 4

p u l s ew a v e f o r m1 3 5

q u e s t i o nm a r k1 0 1 ,1 0 3

q u o t a t i o nm a r k s( q u o t e s )3 7

r a n d o mn u m b e r s8 7 ,8 9 - 9 3 ,2 7 4

r e g i s t e r2 0 7 ,2 1 9 ,2 2 6 ,2 7 4

r e l e a s e 1 2 9 ,2 0 7 - 9

R E D I M ' DA R R A Y E R R O Rm e s s a g e 2 8 0

R E D OF R O MS T A R TE R R O Rm e s s a g e 2 8

r e m a r k2 7 4

r e s e r v e dw o r d s1 3 9 ,2 4 6 ,2 7 5

R E T U R Nk e y2 2 9

r e t u r na v a l u e2 7 5

R E T U R NW I T H O U TG O S U BE R R O Rm e s s a g

2 8 1

R N Df u n c t i o n8 7 ,8 9 - 9 0

2 8 3

Page 296: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 296/306

Page 297: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 297/306

C o m m a n d sa n dF u n c t i o n sI n d e x

A N Do p e r a t o r1 7 2 ,1 7 2C L O S Ec o m m a n d1 0 0 ,2 4 4

C L R1 6

C O N Tc o m m a n d2 3 6 ,2 4 1 - 4 2

D A T As t a t e m e n t1 2 3 ,1 2 5 - 2 8 ,2 0 3 ,2 2 2 - 2 3

D I Ms t a t e m e n t2 1 0 ,2 1 2 - 1 3

E N Ds t a t e m e n t1 6 5 ,1 6 8 - 6 9 ,2 3 9

F O Rs t a t e m e n t1 1 7 ,1 3 9

G E Ts t a t e m e n t1 2 5 ,1 5 9 ,1 6 1 - 6 3 ,1 9 5 - 9 6 ,2 3 4

G O S U Bs t a t e m e n t1 6 5 ,1 6 7 - 6 8

G O T Os t a t e m e n t5 0 - 5 8 ,1 1 0 , 1 6 5 ,2 4 1 - 4 2

I F s t a t e m e n t 5 9 - 6 5 , 8 0 - 8 3 , 1 0 7 - 8 ,1 1 0 ,1 3 9 ,

1 6 9 , 1 7 2 ,1 7 6 - 7 7

I N P U Ts t a t e m e n t3 9 - 4 5 ,5 0 , 1 0 1 ,1 0 4 - 5 ,1 1 0 ,1 2 5 , 1 6 1 ,1 9 5

I N Tf u n c t i o n8 7 ,9 0 - 9 1 ,9 2 - 9 3

L E F T Sf u n c t i o n 1 8 0 ,1 8 2 - 8 3

L E Nf u n c t i o n1 8 0 ,1 8 4

L E Ts t a t e m e n t4 4 , 6 8 , 6 9 ,1 0 3 , 1 1 0 , 1 3 9 , 1 8 5 ,

2 4 0

L I S Tc o m m a n d1 9 ,1 0 1 , 1 0 6 , 1 1 0 ,1 3 9

L O A Dc o m m a n d9 4 ,9 8 ,1 1 0

M I D $f u n c t i o n1 8 0 ,1 8 4 - 8 5

N E Wc o m m a n d1 , 5 , 6 , 1 1 0

N E X Ts t a t e m e n t1 1 7

N O To p e r a t o r1 7 2 ,1 7 7 - 7 8O P E Nc o m m a n d9 4 , 9 9 ,2 4 4

O Ro p e r a t o r1 7 2 ,1 7 4

P E E Kf u n c t i o n1 9 3 ,1 9 7

P O K Es t a t e m e n t1 , 1 2 9 ,1 3 1 - 3 2 ,1 4 5 , 1 5 2 ,

1 5 3 - 5 8 ,2 2 1

P R I N Ts t a t e m e n t4 - 8 ,1 0 - 1 6 ,3 2 - 3 7 ,4 3 , 7 1 ,

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

2 4 0

R E A Ds t a t e m e n t1 2 3 ,1 2 5 - 2 8

R E Ms t a t e m e n t4 , 8 ,2 3 , 1 0 8 - 9 ,1 1 0 ,1 3 9

R E T U R Ns t a t e m e n t1 6 5 ,1 6 8 - 6 9

R I G H T Sf u n c t i o n1 8 0 , 1 8 1 ,1 8 3

R N Df u n c t i o n8 7 ,8 9 - 9 0R U Nc o m m a n d1 , 4 , 8 ,1 1 0 ,2 4 1 - 4 2

S A V E c o m m a n d9 4 ,9 6 , 1 1 0

S T E Pf u n c t i o n1 1 7

S T O Ps t a t e m e n t2 3 6 ,2 3 8 - 4 2

S T R $f u n c t i o n6 6 , 1 8 7 ,1 9 0

T A Bf u n c t i o n7 4 - 7 5 , 7 6 - 7 7 ,1 3 9

T H E Ns t a t e m e n t 8 2 - 8 3 ,1 0 1 , 1 0 6 ,1 6 9 ,1 7 2

T I r e s e r v e dv a r i a b l e1 3 7 ,1 4 3

T I $r e s e r v e dv a r i a b l e1 8 5

T Of u n c t i o n1 3 9

V A Lf u n c t i o n6 6 ,1 8 7 ,1 8 9

2 8 5

Page 298: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 298/306

Page 299: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 299/306

I f y o u ' v ee n j o y e dt h ea r t i c l e si n t h i sb o o k ,y o u ' l lf i n dt h e

s a m es t y l ea n dq u a l i t yi n e v e r y m o n t h l yi s s u eo f C O MP U T E !M a g a z i n e .U s et h i sf o r mt o o r d e ry o u rs u b s c r i p t i o n

t o C O M P U T E ! .

F o rF a s t e s tS e r v i c e

C a l lO u rT o i l - F r e eU SO r d e rL i n e

8 0 0 - 3 3 4 - 0 8 6 8I n N Cc a l l9 1 9 - 2 7 5 - 9 8 0 9

C O M P U T E !P . O .B o x5 4 0 6

G r e e n s b o r o ,N C2 7 4 0 3

M yc o m p u t e ri s :

□ C o m m o d o r e6 4 □ T I - 9 9 / 4 A□ T i m e x / S i n c l a i r□ V I C - 2 0□ P E T□ R a d i oS h a c kC o l o rC o m p u t e r□ A p p l e□ A t a r i□ O t h e r□ D o n ' t y e th a v eo n e . , .

□ $ 2 4O n eY e a rU SS u b s c r i p t i o n□ $ 4 5T w oY e a rU SS u b s c r i p t i o n□ $ 6 5T h r e e Y e a r U SS u b s c r i p t i o n

S u b s c r i p t i o n r a t e so u t s i d et h eU S :

□ $ 3 0C a n a d a□ $ 4 2E u r o p e ,A u s t r a l i a ,N e wZ e l a n d / A i rD e l i v e r y□ $ 5 2M i d d l eE a s t ,N o r t hA f r i c a ,C e n t r a lA m e r i c a / A i rM a i l□ $ 7 2E l s e w h e r e / A i rM a i l

□ $ 3 0I n t e r n a t i o n a lS u r f a c eM a i l ( l e n g t h y , u n r e l i a b l ed e l i v e r y )

N a m e

A d d r e s s

C i t y S t a t e Z i p

C o u n t r y

P a y m e n tm u s tb e i n U S f u n d sd r a w no n a U S b a n k ,i n t e r n a t i o n a l

m o n e yo r d e r ,o r c h a r g ec a r d .

□ P a y m e n tE n c l o s e d□ V i s a

□ M a s t e r C a r d □ A m e r i c a nE x p r e s s

A c c t , N o . E x p i r e s /

Y o u rs u b s c r i p t i o nw i l lb e g i nw i t ht h e n e x ta v a i l a b l ei s s u e .

P l e a s ea l l o w4 - 6w e e k sf o rd e l i v e r y o ff i r s ti s s u e .S u b s c r i p t i o n

p r i c e ss u b j e c tt o c h a n g ea t a n yt i m e .

7 4 D 1 9 9

Page 300: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 300/306

Page 301: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 301/306

I f y o u ' v ee n j o y e dt h ea r t i c l e si n t h i sb o o k ,y o u ' l lf i n d

t h es a m es t y l ea n dq u a l i t yi n e v e r y m o n t h l yi s s u eo f

C O M P U T E i ' sG a z e t t ef o rC o m m o d o r e .

F o r F a s t e s tS e r v i c e

C a l lO u rT o i l - F r e eU SO r d e rL i n e

8 0 0 - 3 3 4 - 0 8 6 8I n N Cc a l l9 1 9 - 2 7 5 - 9 8 0 9

C O M P U T E P sG a z e t t eP . O .B o x5 4 0 6

G r e e n s b o r o ,N C2 7 4 0 3

M yc o m p u t e ri s :□ C o m m o d o r e6 4 □ V I C - 2 0□ O t h e r .

□ $ 2 4O n eY e a r U SS u b s c r i p t i o n□ $ 4 5T w oY e a rU SS u b s c r i p t i o n

□ $ 6 5T h r e e Y e a r U SS u b s c r i p t i o n

S u b s c r i p t i o n r a t e so u t s i d et h eU S :

□ $ 3 0C a n a d a□ $ 4 5A i rM a i l D e l i v e r y

□ $ 3 0I n t e r n a t i o n a lS u r f a c eM a i l

N a m e

A d d r e s s

C i t y S t a t e Z i p

C o u n t r y

P a y m e n tm u s tb e i n U Sf u n d sd r a w n o na U S b a n k ,i n t e r n a t i o n a l

m o n e yo r d e r , o rc h a r g ec a r d . Y o u rs u b s c r i p t i o nw i l lb e g i nw i t ht h e

n e x ta v a i l a b l ei s s u e .P l e a s e a l l o w4 - 6w e e k sf o rd e l i v e r y o ff i r s ti s s u e .

S u b s c r i p t i o np r i c e ss u b j e c tt o c h a n g ea t a n yt i m e .

□ P a y m e n tE n c l o s e d□ V i s a

□ M a s t e r C a r d □ A m e r i c a nE x p r e s s

A c c t .N o . E x p i r e s /

T h eC O M P U T E DG a z e t t es u b s c r i b e rl i s t i s m a d ea v a i l a b l e t oc a r e f u l l ys c r e e n e d

o r g a n i z a t i o n sw i t ha p r o d u c to r s e r v i c ew h i c hm a yb e o f i n t e r e s tt o o u rr e a d e r s .I f y o u

p r e f e rn o tt o r e c e i v es u c hm a i l i n g s ,p l e a s ec h e c kt h i sb o xa

7 4 D 1 9 9

Page 302: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 302/306

Page 303: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 303/306

C O M P U T E !B o o k sA s ky o u rr e t a i l e rf o rt h e s eC O M P U T E IB o o k so r o r d e rd i r e c t l yf r o mC O M P U T E ! .

C a l lt o l lf r e e( i n U S )8 0 0 - 3 3 4 - 0 8 6 8( i nN C9 1 9 - 2 7 5 -9 8 0 9 )o r w r i t eC O M P U T E !B o o k s ,P . O .B o x5 4 0 6 ,

G r e e n s b o r o ,N C2 7 4 0 3 .Q u a n t i t yT i t l e P r i c e * T o t a l

C O M P U T E r sC o m m o d o r eC o l l e c t i o n ,V o l u m e1 $ 1 2 . 9 5

C o m m o d o r eP e r i p h e r a l s :A U s e r ' sG u i d e $ 9 . 9 5

C r e a t i n gA r c a d eG a m e so n t h eC o m m o d o r e6 4 $ 1 4 . 9 5

M a c h i n eL a n g u a g eR o u t i n e sf o rt h eC o m m o d o r e6 4 $ 1 4 . 9 5

M a p p i n gt h eC o m m o d o r e6 4 $ 1 4 . 9 5

C O M P U T E DF i r s tB o o ko f V I C $ 1 2 . 9 5

C O M P U T E DS e c o n dB o o ko f V I C $ 1 2 . 9 5

C O M P U T E DT h i r dB o o ko f V I C $ 1 2 . 9 5C O M P U T E I ' sF i r s tB o o ko f V I CG a m e s $ 1 2 . 9 5

C O M P U T E I ' sS e c o n dB o o ko f V I CG a m e s $ 1 2 . 9 5

C r e a t i n gA r c a d eG a m e so n t h eV I C $ 1 2 . 9 5

P r o g r a m m i n gt h eV I C $ 2 4 . 9 5

V I CG a m e sf o rK i d s $ 1 2 . 9 5

M a p p i n gt h eV I C $ 1 4 . 9 5

T h eV I Ca n d6 4 T o o lK i t :B A S I C $ 1 6 . 9 5

M a c h i n eL a n g u a g ef o rB e g i n n e r s $ 1 4 . 9 5

T h eS e c o n dB o o ko f M a c h i n eL a n g u a g e $ 1 4 . 9 5

C o m p u t i n gT o g e t h e r :A P a r e n t s& T e a c h e r sG u i d et o C o m p u t i n gw i t hY o u n gC h i l d r e n $ 1 2 . 9 5

B A S I CP r o g r a m sf o rS m a l lC o m p u t e r s $ 1 2 . 9 5

' A d d$ 2 . 0 0p e rb o o kf o rs h i p p i n ga n dh a n d l i n g .

O u t s i d eU Sa d d$ 5 . 0 0a i rm a i l o r$ 2 . 0 0 s u r f a c em a i l .

S h i p p i n g& h a n d l i n g :$ 2 . 0 0 / b o o kT o t a lp a y m e n t

A l lo r d e r sm u s tb e p r e p a i d( c h e c k ,c h a r g e ,o r m o n e yo r d e r ) .

A l lp a y m e n t sm u s tb e i n U Sf u n d s .

N Cr e s i d e n t sa d d4 . 5 %s a l e st a x .

□ P a y m e n te n c l o s e d .

C h a r g e□ V i s a □ M a s t e r C a r d□ A m e r i c a nE x p r e s s

A c c t .N o E x p .D a t eN a m e

A d d r e s s

C i t y S t a t e Z i p

• A l l o w4 - 5w e e k sf o r d e l i v e r y .

P r i c e sa n da v a i l a b i l i t ys u b j e c tt o c h a n g e .

C u r r e n tc a t a l o ga v a i l a b l eu p o nr e q u e s t .

Page 304: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 304/306

Page 305: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 305/306

Page 306: Compute's Kids and the Commodore 64 Revised

8/6/2019 Compute's Kids and the Commodore 64 Revised

http://slidepdf.com/reader/full/computes-kids-and-the-commodore-64-revised 306/306