My Dad’s 1982 Program

Josh Elman
2 min readFeb 22, 2021

--

Today I spent the whole morning making a Scratch program for my family.

It reminded me of something my brother recently unearthed and that my Dad used to make cool programs on the Vic 20.

Amazing how the circle continues.

1 rem “greeting to grandparents” copyright 1982 by donald elman
2 clr
10 a$=”{red}{red}{cyn}{pur}{grn}{blu}{yel}”
15 poke36879,12
20 poke36878,15
30 print”{clr}”;
40 fori =1 to 22
50 gosub 3000:gosub 4000:print b$”S”;
60 nexti
70 fori=1 to 21
80 gosub3000:gosub4000:printb$”S S”;
90 nexti
100 fori=1 to 21
110 gosub 3000:gosub 4000:print b$;”S”;
120 next i
130 poke36876,0
140 fori=1to1000:nexti
150 s1=36874:s2=36875
160 s3=36876:v=36878
165 print”{home}{wht}”
170 fori=1 to 4
175 readsl
180 forj=1 to sl
190 read p,d,g$
195 pokev,15
200 poke s2,p
210 printg$;
220 forn=1 to 200*d:next n
230 poke s2,0
240 forn=1 to 20:nextn
250 next j
260 print
270 next i
275 ifvs=0then300
280 poke v,0
290 fori=1to1000:next
300 print”{home}”
310 fori=1 to 4
320 print”{blu}S {cyn}S{pur}S {yel}”
330 next i
335 ifvs=1thenvs=0:goto340
336 vs=1:goto165
340 print”{home}{down}{down}{down}{down}{rght}to {wht}grandma & grandpa”
350 gosub3500
360 gosub3600
380 print”{rght}{red}{down} S S S love S S S S”
390 pokes2,232:pokes1,239:pokev,7
400 gosub3600
405 print”{down}{down}{rght}{pur}joshua, {grn}adam, {cyn}linda,{down}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{wht}don & {yel}vic”
410 gosub 3500
420 gosub3600
430 fori=1 to 750:next i
440 print”{rght}{blu} oh”;:pokes1,239:pokes2,0:pokes3,0:pokev,13
442 fori=1 to1200:next i
450 print” yeah!!{blk}{up}{up}{up}{up}{up}{up}”;:pokes1,240:pokev,4:pokes2,0:pokes3,0:gosub3600
1000 fori=1 to 2000:next i
2000 data6,225,1,”{rght}we “,232,1,”love “,235,1,”you, “,237,1,”grand”,235,1,””,232,3,”ma”
2010 data5,225,1,”{rght}and “,232,1,”grand”,237,1,”pa, “,237,1,”too”,235,4,”;”
2020 data6,225,1,”{rght}in “,231,1,”san “,232,1,”di”,235,1,”e”,232,1,””,231,3,”go,”
2030 data5,225,1,”{rght}the “,231,1,”sky’s “,235,1,”sure “,235,1,”{cyn}blue{wht}”,232,4,””
2040 data6,225,1,”{rght}so “,232,1,”for “,235,1,”this “,237,1,”tr”,235,1,”i”,232,3,”p”
2050 data3,232,1,”{rght}we “,237,2,”thank “,238,6,”{yel}you — {wht}”
2060 data4,238,2,”{rght}oh, “,237,1,”grand”,235,1,”par”,232,2,”ents”
2070 data3,235,2,”{rght}{grn}we “,231,2,”{red}love{$a0}”,232,6,”{pur}you!!!”
2400 pokes1,0:pokes2,0:pokes3,0
2500 end
3000 n=int(rnd(1)*7)+1
3010 b$=mid$(a$,n,1)
3030 return
3500 pokes3,235:pokes2,231:pokes1,240:pokev,7
3510 return
3600 for n=1 to 1500:next n
3610 pokev,0:forn=1 to 500:next n
3620 return
4000 poke36876,int(rnd(1)*128)+128
4010 form=1 to 10:nextm
4020 return

All credit to Adam Elman for saving the code and getting it to render on a Vic 20 Emulator after all these years

--

--

Josh Elman

I love building products that people use. I‘ve helped build Twitter, Facebook Connect, LinkedIn, Robinhood. Investor in Medium, Tiktok/Musical.ly, Discord