It’s not colorful and it’s not pretty, but this small piece of paper says a lot about how far we’ve come in personal computing.
I found this 5×10.5″ document in an old box of Commodore 64 ephemera that I inherited from a stranger (along with some of his old speeding tickets) via a hamfest. It appears to be the reward for filling out a COMPUTE! magazine survey (circa mid 1980s) and contains the BASIC program code for a game called Amazer.
Typed program listings like this were extremely common back in the day, but I found this example particularly interesting, as it was intended to be a bonus “gift” program, and they didn’t even bother to send a disk or cassette. Paper was a far cheaper distribution medium, of course, but it’s not even a full piece of paper! They must have had trouble finding a decent game small enough to fit the size of paper allocated by their minuscule gift budget.
I just did a quick search for “Amazer” on Google and found that some enterprising individual is trying to sell a copy of this very document on eBay for $50. He even went so far as to blur out the program listing on his picture! And no, this item is not worth $50. It’s more like a few steps away from toilet paper in terms of actual monetary value. But it’s still a neat historical footnote, no doubt.
If you use this image on your site, please support “Retro Scan of the Week” by giving us obvious credit for the original scan and entry. Thanks.
March 5th, 2007 at 10:26 am
I kid ya not. I sold a 5k ‘TEXT’ file on ebay once for $150 US. All it contained was addresses. The kid selling that paper for $50…I think he might just get it if his auction is convincing enough.
As far as the game/paper itself…it does should how far we have come. Think of it this way..most computers these days are being sold without floppy drives. It is just wrong I tell ya!
March 5th, 2007 at 3:21 pm
eBay, where idiots sell overpriced crap to bigger idiots! The same guy wants $80 for a SID chip so he’s clearly not the sharpest pencil.
Because Benj was cool enough to post that graphic, I’ll return the favour:
100 DIMA(4):V=PEEK(0)=76:W=40+18*V:SC=1024-6656*V:C=55296+16896*V:L=25+2*V
110 IFV=0THENPOKE3280,0:POKE53281,2
115 IFVTHENPOKE36879,40
120 A(0)=2:A(1)=-W*2:A(2)=-2:A(3)=W*2
130 WL=160:HL=32:A=RND(-TI):A=SC+W*4+3
140 PRINTCHR$(147);:FORI=W*3TOL*W-W*2STEPW:FORJ=2TOW-4
150 POKESC+I+J,WL:POKEC+I+J,14+8*V:NEXT:NEXT
160 FORI=2+L*W-WTOL*W-4:POKESC+1,239:POKEC+I,6+2*V:NEXT
170 FORI=W*4-3TOL*W-W-3STEPW:POKESC+I,246:POKEC+I,6+2*V:NEXT
180 POKEA,4:PRINTCHR$(19);CHR$(158):PRINTCHR$(18);CHR$(142);CHR$(8);
190 PRINT TAB((W-8)/2);” AMAZER ”
200 PRINT CHR$(153);TAB((W-17)/2);” SETTING UP MAZE ”
210 POKEA,4
220 J=INT(RND(1)*4):X=J
230 B=A+A(J):IFPEEK(B)=WLTHENPOKEB,J:POKEA+A(J)/2,HL:A=B:GOTO 220
240 J=(J+1)*-(JXTHEN230
250 J=PEEK(A):POKEA,HL:IFJ.94THENZ=164
290 IFPEEK(B)=WLTHEN320
300 IFB=PTHEN400
310 POKECC+B,7:POKEB,81:POKEA,Z:POKECC+A,13+8*V:A=B:J=(J+2)+4*(J>1)
320 J=(J-1)-4*(J=0):GETK$
330 IFT=0ANDK$=””THENTI$=”000000″:GOTO280
340 IFT=0THENPRINTCHR$(19):PRINT:PRINTTAB((W-18)/2);” TIME USED:”;TI$;” “:T=1
350 IFK$>=”I”ANDK$WLTHENPOKEP,HL:P=NP
370 IFPK=WLTHENI=4
380 IFPK=164THEND=D+1:S=SC+W*L-W-W*D:POKES,164:POKES+CC,13+8*V:IFD=20THEN400
390 PRINTCHR$(19):PRINT:PRINTTAB((W-17)/2+11);TI$:GOTO280
400 PRINTCHR$(159);CHR$(19);
410 PRINTCHR$(5);TAB((W-13)/2-2);” YOU FOUND $”;STR$(D)
420 PRINTCHR$(158)
256 GETK$:IFK$””THEN430
440 GETK$:IFK$CHR$(13) THEN 440
450 RUN
If anyone wants this in program form, grab it here:
http://www.gamebase64.com/game.php?id=11838&d=18&h=0
Hope that helps.
March 5th, 2007 at 3:25 pm
Cool, Bjorn! Thanks for transcribing it.
March 5th, 2007 at 6:03 pm
I am SO glad we don’t have to do this anymore…
March 7th, 2007 at 12:32 am
Three cheers to anyone who actually still has all of those Pokes and Peeks memorized!
Notice how they saved paper by using the goold old : separator instead of printing each line individually…. 😀
Layne
March 12th, 2007 at 12:44 am
Oh, this brings back memories!
But yes, I am so glad someone typed it in for us! We are so spoiled now.
Even better, the program didn’t work, so I had to debug some pasting anomalies!
Can’t believe I knew immediately how to fix it, I guess it’s like riding a bike!
March 12th, 2007 at 1:54 am
Well, this may not work because of html filtering in the comment system, but this is what I got after debugging:
100 DIMA(4):V=PEEK(0)=76:W=40+18*V:SC=1024-6656*V:C=55296+16896*V:L=25+2*V
110 IFV=0THENPOKE53280,0:POKE53281,2
115 IFVTHENPOKE36879,40
120 A(0)=2:A(1)=-W*2:A(2)=-2:A(3)=W*2
130 WL=160:HL=32:A=RND(-TI):A=SC+W*4+3
140 PRINTCHR$(147);:FORI=W*3TOL*W-W*2STEPW:FORJ=2TOW-4
150 POKESC+I+J,WL:POKEC+I+J,14+8*V:NEXT:NEXT
160 FORI=2+L*W-WTOL*W-4:POKESC+1,239:POKEC+I,6+2*V:NEXT
170 FORI=W*4-3TOL*W-W-3STEPW:POKESC+I,246:POKEC+I,6+2*V:NEXT
180 POKEA,4:PRINTCHR$(19);CHR$(158):PRINTCHR$(18);CHR$(142);CHR$(8);
190 PRINT TAB((W-8)/2);” AMAZER ”
200 PRINT CHR$(153);TAB((W-17)/2);” SETTING UP MAZE ”
210 POKEA,4
220 J=INT(RND(1)*4):X=J
230 B=A+A(J):IFPEEK(B)=WLTHENPOKEB,J:POKEA+A(J)/2,HL:A=B:GOTO 220
240 J=(J+1)*-(JXTHEN230
250 J=PEEK(A):POKEA,HL:IFJ.94THENZ=164
290 IFPEEK(B)=WLTHEN320
300 IFB=PTHEN400
310 POKECC+B,7:POKEB,81:POKEA,Z:POKECC+A,13+8*V:A=B:J=(J+2)+4*(J>1)
320 J=(J-1)-4*(J=0):GETK$
330 IFT=0ANDK$=””THENTI$=”000000″:GOTO280
340 IFT=0THENPRINTCHR$(19):PRINT:PRINTTAB((W-18)/2);” TIME USED:”;TI$;” “:T=1
350 IFK$>=”I”ANDK$WLTHENPOKEP,HL:P=NP
370 IFPK=WLTHENI=4
380 IFPK=164THEND=D+1:S=SC+W*L-W-W*D:POKES,164:POKES+CC,13+8*V:IFD=20THEN400
390 PRINTCHR$(19):PRINT:PRINTTAB((W-17)/2+11);TI$:GOTO280
400 PRINTCHR$(159);CHR$(19);
410 PRINTCHR$(5);TAB((W-13)/2-2);” YOU FOUND $”;STR$(D)
420 PRINTCHR$(158);:PRINT TAB((W-19)/2);” PRESS {SPACE}”;CHR$(18);”RETURN”
256 GETK$:IFK$””THEN430
440 GETK$:IFK$CHR$(13) THEN 440
450 RUN
March 12th, 2007 at 11:28 pm
What “debugging” would that be? The code I offered above is *exactly* as it was presented by Compute! and works perfectly. I even gave a link where you could download the program in ready-to-run form.
March 15th, 2007 at 12:50 pm
No was not your fault, copy and past in your code from above and try it.
Then start debugging and you’ll figure it out
March 17th, 2007 at 1:53 am
Works just fine here.
February 3rd, 2011 at 8:08 pm
Just to clear it up, Jokton was right! There were a few typo’s in the original. The differences are lines 110 (missing a number) and 420 (missing the end of the line).
I resolve 4 year old arguments on the internet. That’s what I do!
February 4th, 2011 at 4:10 pm
Haha cheers Cody!