ZX81 Programs


Read about, play, run, or list games, animations, and more. These are my programs from the ’80s to today.

ZX81 Program Listing

SNUNCH ML*SLR 1983/2013 (snml.p)


SYSTEM VARIABLES

PROG  : 16509
D-FILE: 26808
VARS  : 27601
E-LINE: 27602
STKBOT: 27602
STKEND: 27602


LEGEND

A means INVERSE A
A means GRAPHICS A
PRINT means treat as KEYWORD P


PROGRAM LISTING

   0 REM MCII
30403 ?/INKEY$?INKEY$?CALL INKEY$
??INKEY$?  ??INKEY$?5PI?8PI?
INPUT PI?ERR MSGS CALL LN V284
IF INT £FAST STR$ ACS ?CAY-LN 5
PILN (INKEY$)(BLN UNPLOT RNDK;)
CONT 7LN UNPLOT RNDK=)HOME  LN
UNPLOT RNDK>2SLN UNPLOT RNDK)/=
LN 2INKEY$)CONT 7LN 2INKEY$)
HOME  LN 2INKEY$2SLN 2INKEY$21
LN 2INKEY$SGN LPRINT TAN FAST B
GOSUB DELETE LPRINT TAN Y0B
GOSUB DELETE S7W/RAND ;?5PI?J
LINE ?J?7TAN RND)5 FAST GOSUB
UNDRAW /RNDD7FAST ;FOR 5CHR$ 2
GOSUB PISTOP AT FOR GOSUB K
LPRINT 1Q2D6:RNDCLEAR QT5CLEAR Q
U7TAN LN V21COPY RETURN JFAST
GOSUB PILPRINT COS //LN V2G4IF
LN V2?RETURN COPY CSAVE 1COPY
RETURN JFAST GOSUB PILPRINT C
INPUT JERR MSGS 8COS 9EDIT LN XE
ASN DRNDTAN ACS UNPLOT 6ORNDEO
RND?NEW ?PCOS LN CALL INKEY$C
NEXT TAN YF( AND GOTO PICHAR Y1
ACS CK2Y4ACS DK2ACS EPRINT LN
INT INKEY$EACS ?K2INPUT ?CHAR )2
£UKRND<IF VAL INKEY$LET J4/2LET
KRETURN AS2INPUT ?/QY*( AND
GOTO PI?NEW 3DEF PROC VAL VAL
VAL JACS (ACS (ACS (POP LINE DD
AT CHAR DAT CHAR DGOSUB UNDRAW
£RNDD76:RNDAT Y/(MURNDY5)MTRND
TAN STR$ FAST VAL RETURN
8218 RNDACS AUTO C5LN ( /QE:RND
LN DO PI/CRETURN RNDABS JPI51RND
ACS AUTO C5LN ( /*E:RNDPRINT
LET E:RND?76:RND5TRNDPAT LPRINT
SGN TAN 7PRINT 6:RNDCLEAR QT5UU
RNDXMURNDRETURN 2ATN PUSH PILET
TAN U5RNDRETURN  CTXM5RND/AE£RND
1SAVE 2DQ?FAST LN CALL INKEY$C
CLS LPRINT RETURN CASN ES
RETURN ZC:RETURN D4EACS 0F?O4
CLS ?/INKEY$LN PUSH A/ABS ?LCOS
,LN 5PI<"/PRINT RETURN CALL SD
RETURN ""ACS R AND FPINEW Z5)1
CHAR 4RETURN 5K£RETURN 1C4
RETURN *S4JLN 5PIACS 5PI7/PRINT
NEW ZLN 5PIJ?APIINT F?MCIF LN O
CALL VAL UNDRAW PI)  STR$ FOR 7D
FOR D?+?0FOR KPLOT FOR FOR J?3
LINE ?3?OC/FOR JACS 0ACS 1?+?0
IF DCALL ?+DEF PROC ?0CHAR STOP
;STOP /<>LPRINT AT ACS ?TAB (
INKEY$TAN ERR MSGS ?*>=(INKEY$
FOR ?CCHAR ACS ?TAB (INKEY$TAN
GOSUB OFFMRNDONICLEAR ?RT GOSUB
DELETE /GOSUB DELETE /READ
END PROC GOSUB DELETE K176MRND
ACS WERR MSGS EDIT TAN LN   E-
RND7PRINT LN -DPOKE LN -DPOKE
LN SCHAR LN INPUT DEF PROC INT ?
LN RAUTO LN <>AUTO TAN LN LEN
AUTO YCODE LN RUN DEF PROC LN *
EDIT /$LN RAUTO 5  LN >ERR MSGS
7LN NEXT AUTO FAST LN LEN AUTO
LPRINT LN >ERR MSGS LN A
ERR MSGS LN LLIST A)CLEAR CALL 1
LN IF DEF PROC E?RNDLN INPUT
DEF PROC )RUN CALL 14 LN IF
DEF PROC E?RNDLN INPUT DEF PROC
LN .CHAR LN .CHAR YRUN LN RUN
DEF PROC Y?LN RUN DEF PROC LN
LET DEF PROC RETURN YTAB DRND5
LIST CALL FAST LN ESE?RNDDIM LN
POKE DEF PROC 4CLS INT ?
30455  
30386 DER II ENDAT YTAN ?BDPOKE 6
?RNDGOSUB OFF0RND<5?RNDLN OFF
DPOKE 5  6?RNDE?RND6?RNDLN A
DEF PROC WM5END PROC 5?RNDFAST
LN 7DPOKE LPRINT FAST 7776-RNDU*
RNDM5RNDLN -DPOKE RETURN PAUSE
ATN NEXT ERR MSGS RETURN RAND
ATN CHR$ UNDRAW RETURN IF ATN ,
EDIT RETURN THEN CREM RETURN
DIM ATN JDEF PROC RETURN GOTO
ATN ?DPOKE RETURN GOSUB ATN >
DPOKE RETURN FOR ATN PAUSE
UNDRAW RETURN NEXT ATN 2PROTECT
RETURN SLOW ATN ""AUTO RETURN
POKE ATN VAL UNDRAW RETURN FAST
ATN LAUTO RETURN INPUT ATN Y
PROTECT RETURN PLOT ATN DATA
EDIT RETURN UNPLOT ATN 6EDIT
RETURN LET ATN 2 RETURN CLS ATN
KUNDRAW RETURN STOP ASN £UNDRAW
RETURN PRINT ATN LET DPOKE
RETURN LPRINT ATN CHR$ DPOKE
RETURN NEW ATN 2DPOKE RETURN
COPY ATN UNPLOT ERR MSGS RETURN
REM CPROTECT RETURN SCROLL ATN P
UNDRAW RETURN RETURN ATN $
ERR MSGS RETURN CLEAR ATN A
DEF PROC RETURN  4;E-RND-DPOKE
RETURN
8202 2DEF PROC TAB QERR MSGS LN
£UNDRAW LN LEN AUTO YSLN RUN
DEF PROC ?DRNDLN HTRACE 5=RND?S
UNDRAW 5PUSH A?SUNDRAW 5?7?S
UNDRAW SCROLL RETURN ?4SGN LN
RUN DEF PROC 5/DPOKE LN SUNDRAW
/LEN 1RETURN RETURN GOSUB POP
ACS 1**?POKE DEF PROC UNTIL 7
RESTORE STR$ FOR FAST 67RND6SRND
LN .CHAR LN INPUT DEF PROC JLN
RUN DEF PROC LPRINT LN BREAK
DPOKE ..FOR SGN LN OFFDPOKE
GOSUB OFF?RNDLN OFFDPOKE FAST
GOSUB OFF?RNDBGOSUB DELETE
LPRINT **6?RND?SCROLL CHAR ?7?7
TAN RESTORE 7UNTIL 7TAN FAST AT
E0RND7LN NOSTALGIC DPOKE FOR B
GOSUB PISQR E?RNDGOSUB DELETE **
FOR 7/GOSUB Y?PRINT LN -DPOKE
LN DO PROTECT LN BREAK DPOKE
FOR LN NOSTALGIC DPOKE FOR LET ?
UUNDRAW YLN /DIM FAST SCROLL
RETURN
10249 C5PRINT LN RUN DEF PROC
LET LPRINT TAN VAL FAST E?RND
PRINT ?FAST 76?RNDLN POKE
DEF PROC RETURN D4-Y
52727 LN INPUT DEF PROC JLN RUN
DEF PROC LET A ?LN INPUT
DEF PROC /2LPRINT LET LPRINT AT
JTAN 5CLEAR ACS LN XUNDRAW 51
EXP LN XUNDRAW LN LET DPOKE 5
CLEAR ACS LN XUNDRAW 51:?X
UNDRAW LN -DPOKE RETURN
8198 ERROR LN -DPOKE RETURN
INKEY$CZRETURN
51890 "CYRETURN AT C?RETURN CHR$
ASN >=ERROR RETURN TAB ASN GOTO
ERROR RETURN ,ASN OERROR PRINT E
-RND7LET 1TERROR VAL 1  VAL 1M
TRACE VAL ?CHAR UNDRAW 5INPUT
DEF PROC LN SUNDRAW /RESEQ 5RND
TRACE LN SUNDRAW /7LN LOOP
ERROR 5IF DEF PROC LN SUNDRAW /
CHAR Y?LN BDPOKE E?RNDFAST LN X
UNDRAW 1COPY COPY LN TRACE  7
PRINT LN RUN DEF PROC LET
RETURN "C5LN BDPOKE /INPUT
LPRINT VAL GOSUB OFF?RNDLN OFF
DPOKE Y)LN UUNDRAW Y1LPRINT ?U
UNDRAW LN IUNDRAW LN SQR UNDRAW
5CALL EDIT LN XUNDRAW 5PRINT A
LN SUNDRAW LN -DPOKE RETURN ,C>
RETURN ;ASN CLS DPOKE RETURN +
ASN CLS DPOKE 5.CHAR LN SUNDRAW
JTAN 5XERROR LN SUNDRAW ?CLS
DPOKE 51RNDACS AUTO TAB :"JLN
RUN DEF PROC UTRNDRETURN )S
UNDRAW :(Y/5URND-CHAR ?PRINT A
LN ERR MSGS UNDRAW Y?LN BDPOKE 5
RUN DEF PROC LN SUNDRAW /JLN H
TRACE 5RUN ERROR LN SUNDRAW /8?
NEW 3DEF PROC 51RNDACS AUTO C:5S
RND-ACS COPY LEN WUSR ?A?2DUTRND
CHR$ 5QUNPLOT .CHAR /RY
50167 LN ABS 5IF DEF PROC LN S
UNDRAW ?.ERROR LN NOSTALGIC
DPOKE STR$ LN NOSTALGIC DPOKE
STR$ AT SGN TAN RETURN RNDABS
CONT ERR MSGS 1WRND2LN LINE
CALL RETURN 0SSRETURN RNDKTLN -
DPOKE 7/INPUT RETURN (ME
END PROC C4RETURN $4272SACS
COPY 2LN 6CHAR A ?DDGOSUB
UNDRAW ?RNDDCHAR UEEND PROC
RETURN $CARETURN (42JTAN ?TAN Y1
TAN E4RND91WRNDJMTEND PROC SY
ACS ?4KACS LIST ACS RNDFAST 5T
END PROC OASN CONT ERR MSGS
LPRINT ?FFAST LN SCROLL CHAR
LPRINT 7ACS ?CNEXT J?6DEND PROC
UTEND PROC LN DPEEK CHAR RETURN
14"Y5LN UUNDRAW 5SAVE CHAR LN S
UNDRAW UTEND PROC 55END PROC
ERROR 4S**?TAN EDEND PROC )M 
GOSUB DELETE GOSUB OFF?RNDGOSUB
DELETE SQR INT 6FAST LN
NOSTALGIC DPOKE ?NLPRINT ""
GOSUB OFF1END PROC LN OFFDPOKE )
  LN OFFDPOKE E?RNDGOSUB OFF1
END PROC ;61END PROC 1  ?COS :
LN -DPOKE LN SCHAR RETURN 1ASN
RESEQ RETURN  4SLN DPOKE ACOPY
FAST LN -DPOKE RETURN =TAB CONT
ERR MSGS LN HTRACE LPRINT ?
RETURN COPY 4£5SGN FOR LN X
UNDRAW 5OFFDPOKE ?SUNDRAW Y6?U
UNDRAW FAST 5NOSTALGIC TRACE LN
SUNDRAW LN -DPOKE LN LINE CALL
RETURN (46LPRINT LN ** 5STR$
VAL LN XUNDRAW 5DUP DEF PROC LN
SUNDRAW LN -DPOKE LN 3 5AT SGN
LN XUNDRAW 5?DEF PROC ?SUNDRAW
LN -DPOKE LN 3 LPRINT Y5LN U
UNDRAW 5?TRACE ?SUNDRAW I+FAST
LN -DPOKE RETURN (CRAND RETURN "
45LN LOOP ERROR /END WHEN
RETURN INKEY$4A5RNDTRACE LN S
UNDRAW /USER RETURN CHR$ 4"LN
ERR MSGS UNDRAW 5UTRACE LN S
UNDRAW /DELETE LN ABS /EDIT LN
SCHAR LN -DPOKE FAST LN LINE
CALL RETURN (4NLN -DPOKE LN H
TRACE E-RNDDATA LOOP LN XUNDRAW
/"LN -DPOKE RETURN TO TAB CONT
ERR MSGS LN OUNDRAW 5AUTO TRACE
LN SUNDRAW LPRINT Y5LN UUNDRAW 5
WHILE TRACE ?SUNDRAW LPRINT Y5
LN UUNDRAW 5HCHAR ?SUNDRAW 5
LINE TRACE LN SUNDRAW LN LINE
CALL RETURN )CDLPRINT X""LN -
DPOKE ?5 LN -DPOKE /FOR ?11 /D
LN POKE DEF PROC 1  GCOS £)D
END PROC >TAN B.GOSUB DELETE
ERR MSGS EDIT LIST INT FSTR$ LN
NOSTALGIC DPOKE FOR SGN ;FOR
TAN E1END PROC 65END PROC TAN ?L
COS E5END PROC FOR GOSUB KGOSUB
DO 5END PROC TAN FAST E5
END PROC GOSUB OFF1END PROC B
GOSUB DELETE FAST AT LPRINT LN
NOSTALGIC DPOKE VAL FAST LN ?
DEF PROC LPRINT AT ?7?TAN FOR TA
?RETURN  C1ACS  DRAW ?FOR 5  
ACS T3K1;FOR DFOR (PRINT TAN J
PRINT LN ERR MSGS UNDRAW LN
LINE CALL RETURN + AND RNDDRAW
RETURN ;ABS RNDDRAW YFAST LN B
DPOKE LN -DPOKE PRINT LN
ERR MSGS UNDRAW LET RETURN +C4
RETURN -47AT LINE ?RETURN  44
PRINT FAST /PEEK FAST 5ERR MSGS
EDIT LN XUNDRAW LN NEXT TRACE Y
FAST 5PUSH NOSTALGIC LN UUNDRAW
/ZPRINT VAL /0RETURN /C(RETURN *
TAB CONT ERR MSGS LN VDRAW 5)
TRACE LN SUNDRAW /BLN VDRAW 5
CLEAR DEF PROC /NEXT YLPRINT LN
BDPOKE LET RETURN  COS RETURN +C
)LN VDRAW 5BFOR LN XUNDRAW 5
GOSUB DELETE LN XUNDRAW /SCROLL
LN VDRAW Y;LN BDPOKE /<>YSGN ?B
DPOKE RETURN )4USR LN -DPOKE /
INT RETURN PEEK 4?LN ERR MSGS
UNDRAW 5A ?XUNDRAW RETURN USR 4>
LN ERR MSGS UNDRAW 5PUSH DRAW ?S
UNDRAW 1?DRAW VAL FAST TAN
NOSTALGIC PUSH TAN RETURN CODE 4
G55END PROC YELN UUNDRAW YFAST
LN BDPOKE ICOPY LN 5 YSGN LN B
DPOKE 5>DRAW /USR E5END PROC
GOSUB DO 5END PROC JGOSUB
DELETE LINE ?COS ,?TAN RETURN
RND455ARND/VRETURN ABS 4)LN
ERR MSGS UNDRAW 5ACS ?LN X
UNDRAW YCODE 5?UNDRAW ?UUNDRAW
RETURN INT ASN ERR MSGS UNDRAW
RETURN LEN 4,LN -DPOKE LN SCHAR
LN -DPOKE Y5LN UUNDRAW 5>=DRAW /
F77LN NOSTALGIC DPOKE FOR TAN
RETURN SGN 4+LN ERR MSGS UNDRAW
5LIST DRAW ?SUNDRAW ?PCOS ACS ?5
1 TAB ?UNDRAW TAN RETURN SQR
TAB CONT ERR MSGS LN ERR MSGS
UNDRAW 5SUNDRAW ?SUNDRAW JXACS ?
C2INT G?ELSE A )RND TAGOSUB
DELETE K1;ZACS >EGOSUB
CLR STACK EGOSUB CLR STACK (
LIST CLR STACK LINE TAN LN H
TRACE LN -DPOKE PRINT YFAST LN B
DPOKE LN HTRACE YSGN LN BDPOKE
LET TAN LN -DPOKE RETURN -PRINT
ATN -DPOKE RETURN (C-RETURN RNDK
$RETURN AUSR ?UNDRAW >=8UNDRAW
LET ATN ELSE UNDRAW TAN LN
TRACE DRAW /PLOT LN HTRACE /LET
5?UNDRAW /CHAR ?JLINE ?J?7TAN
LN SCHAR RETURN  ASN >DEF PROC Y
E/PLN DO PROTECT Y5/I)(BLN A
DPOKE LN $ERR MSGS U5END PROC
DEF PROC £E?RND6?RNDT4LN BDPOKE
(CLS $4PLOT LPRINT GOSUB UNDRAW
?RNDTAN 5ES/75"RNDYLN LN BDPOKE
?LN BDPOKE ??BDPOKE LN IUNDRAW
LN SQR UNDRAW 5FOR ?/GOSUB
RETURN ,TAB CONT ERR MSGS TAN
LN LINE CALL RETURN
10245 TRACE /AYE5ORNDLN UUNDRAW Y
65MRND?UUNDRAW LN -DPOKE LN S
CHAR FAST FAST LN -DPOKE LN I
UNDRAW Y7LN BDPOKE 5GOSUB DO LN
XUNDRAW LPRINT LN XUNDRAW Y677
LN UUNDRAW LPRINT GOSUB OFF?RND?
OFFDPOKE LN -DPOKE LN SCHAR
FAST FAST YELN UUNDRAW 576LN X
UNDRAW LPRINT LN XUNDRAW 77Y
GOSUB LN BDPOKE YOFFLN UUNDRAW Y
B5GOSUB DELETE LN UUNDRAW YIF
LPRINT LN NOSTALGIC DPOKE FOR ?U
UNDRAW 5  /?LN -DPOKE RETURN  
LN )TRACE LET RETURN AABS CONT
ERR MSGS RETURN 0 AND CONT
ERR MSGS CHR$ 0T DEF PROC D/ TO
FAST E-RND)5 ;6-RNDLPRINT TAN
LN -DPOKE LN SCHAR RETURN 1C1
PRINT FAST 5*EDIT LN SUNDRAW
LPRINT LET RETURN  TAB EXIT Y
FOR LN BDPOKE LN SUNDRAW Y5LN U
UNDRAW LN -DPOKE 5VPROTECT ?S
UNDRAW GOSUB UNDRAW 1END PROC
VAL FAST LN 2EDIT 61END PROC
FAST LN PAUSE PROTECT RETURN
10249 KPRINT LN $EDIT /LIST SGN
GOSUB DELETE FAST AT LPRINT LN 6
TRACE AT GOSUB CALL 1END PROC
FAST LN 2EDIT 1LN ?DEF PROC
LPRINT TAN FAST LN LET DEF PROC
LPRINT RETURN ?""J?FY
48672 £RND1SAVE 2DYL?TAN ?7Y
48672 /PAUSE LN 2EDIT FAST FAST
LN PAUSE PROTECT RETURN
10257 CARETURN 0SLET RETURN AK
GOSUB LN $EDIT /CONT 5  SGN ,
RETURN -C(RETURN LC?CHR$ 0DFAST
DDAT DT DEF PROC D</CONT SGN ,
RETURN -PRINT LN NEW PROTECT
LET ""??UNDRAW Y.PRINT LN I
UNDRAW LN SQR UNDRAW 5UNDRAW
DPOKE LN XUNDRAW YYLN BDPOKE
LET LN BDPOKE YM5KRNDLN UUNDRAW
5,RND?SUNDRAW Y4/**?PCOS ?NCOS R
TAN ?PC2RTAN ?NCOS RTAN E-RND7(C
PLOT RETURN INKEY$ASN ERR MSGS
AUTO RETURN CHR$ ASN ERR MSGS
AUTO RETURN "ASN ERR MSGS AUTO 7
LN IUNDRAW RETURN OR 4S5?EDIT
LN SUNDRAW YABS /CHAR RETURN
AND 455EEDIT /LIST PRINT YB5
GOSUB DELETE LN UUNDRAW LET
RETURN =44YTAB /GRETURN <>44Y
ASN /8RETURN >C+RETURN <4EYASN
LN 5AUTO /<RETURN >=4S5C7LN X
UNDRAW YPAUSE /ERETURN <=TAB
CONT ERR MSGS YIF LN 5AUTO LN -
DPOKE RETURN AND ASN ,EDIT TAN
LN BDPOKE ESRND7LN BREAK DPOKE
FOR LN NOSTALGIC DPOKE FOR ?X
UNDRAW LN XAUTO 65END PROC 6E
END PROC TAN E5END PROC QCOPY 7
TAN 5NOSTALGIC TRACE LN SUNDRAW
LN 3 LN -DPOKE PRINT 5NAUTO LN S
UNDRAW LN 3 5XAUTO LN SUNDRAW 52
AUTO LN SUNDRAW LET RETURN =44Y
TAB /ARETURN <>44YASN /2RETURN >
4EYASN LN 5AUTO /ARETURN <C<
RETURN >=44Y AND /ERETURN <=TAB
CONT ERR MSGS 5C7LN XUNDRAW Y
ABS ?+AUTO EEEND PROC GOSUB
UNDRAW 1END PROC SWOY""RETURN  
COS 77/POKE 5RAUTO ?SUNDRAW LN
SCROLL 25VRNDACS QTAN 5LEN AUTO
?SUNDRAW 5VRNDACS PLOT ?E252 LN
**D""FAST LN 2DEF PROC SGN ?
DATA S52 LN **D""LN 2DEF PROC
COS LN 2DEF PROC COS LOOP DATA E
£RND/SCROLL 777VAL 7777VAL LN
EXP AUTO 57 LN **DAT LN 2D7Y
28963 7AT ?7?7QREM 7?7?7TAN 77
AUTO 7ERROR D7U£RND1""U$RND0TAN
LN -DPOKE LN SCHAR Y5LN UUNDRAW
YGOSUB LN BDPOKE YOFF51END PROC
LN UUNDRAW 5OFFDPOKE LN SUNDRAW
LN HTRACE 5UNTIL DEF PROC ?S
UNDRAW 7D7FAST FAST AT E1
END PROC LN COS :AT LN DUP
DEF PROC GOSUB DO 1END PROC TAN
E1END PROC DATA LOOP <Q /7E1
END PROC ?LCOS GOSUB KTAN FAST
LN ERR MSGS UNDRAW 5GOSUB
UNDRAW LN XUNDRAW LPRINT LN X
UNDRAW 5DD?XUNDRAW LN DPOKE 5
NOSTALGIC DPOKE LN SUNDRAW 5FOR
SGN ?XUNDRAW E4RND9QCOPY FQCOPY
FQ 6DEND PROC Y5E?RNDLN UUNDRAW
I:U5END PROC LINE LN XUNDRAW 5
ATN DEF PROC ?SUNDRAW £JM5RNDT4?
7(UNPLOT $4RUN 54 6?RNDE0RND1
HOME  D61END PROC 65END PROC
TAN ?HRND?:RND?)RND?1RND?4RND
FOR ?7RNDNOSTALGIC ELSE   LOOP
ELSE USER ELSE NY 
   2 REM
30241 :?LN ATN DEF PROC 5646NOT
HOME 5<=HOME GOSUB OFF1END PROC
LN OFFDPOKE 54 LN UNTIL
DEF PROC 5  6 TO HOME 5A 6STOP
HOME 54 6SCROLL HOME 5D 6FOR
HOME LN ES51 GOSUB UNDRAW <=
HOME DDFAST 51 SGN FOR LN OFF
DPOKE 52 GOSUB UNDRAW <=HOME DD
FAST 51 SGN FOR LN OFFDPOKE 57 
GOSUB UNDRAW <=HOME DDFAST 51 
SGN FOR LN OFFDPOKE 54 GOSUB
UNDRAW <=HOME DDFAST 51 SGN FOR
LN OFFDPOKE 5  FAST 5D SGN 7
GOSUB DO LOAD HOME 6LET HOME E
LOAD HOME FAST 51 SGN CALL EDIT
LN PRINT A?QEND PROC H)P
END PROC 11 LN IF DEF PROC E
LOAD HOME FAST 5< SGN CALL EDIT
LN PRINT A?SQR END PROC H)INT
END PROC 11 LN IF DEF PROC 5  
FAST ELOAD HOME FAST 51 SGN ;
SGN CALL EDIT LN PRINT A?SAVE
END PROC HHHHHHHHH)LOAD
END PROC 1D LN IF DEF PROC 5D 
FAST ELOAD HOME FAST 51 SGN ;
SGN CALL EDIT LN PRINT A?4HHHHHH
HHH)*1D LN IF DEF PROC LN .CHAR
ELOAD HOME 76LOAD HOME GOSUB OFF
LET HOME BGOSUB DELETE IF 9
END PROC 54 FAST 5E SGN 7GOSUB
DO LOAD HOME 6LET HOME 57 FAST E
LOAD HOME SGN CALL EDIT LN
PRINT A?RESTORE H)DATA 11 LN IF
DEF PROC 5T FAST ELOAD HOME SGN
CALL EDIT LN PRINT A??H)?11 LN
IF DEF PROC 57 FAST ELOAD HOME
FAST 5D SGN ;SGN CALL EDIT LN
PRINT A?/H)*11 LN IF DEF PROC 5T
 FAST ELOAD HOME FAST 5D SGN ;
SGN CALL EDIT LN PRINT A?SH)R11 
LN IF DEF PROC ELOAD HOME FAST 5
4 SGN BFOR GOSUB DELETE FAST 5S 
SGN CALL EDIT LN PRINT A?<=H)
AND 11 LN IF DEF PROC ELOAD
HOME FAST 52 SGN ;FAST 5S SGN
CALL EDIT LN PRINT A?CLS H)IF 11
 LN IF DEF PROC LN .CHAR ELOAD
HOME 76LOAD HOME GOSUB OFFLET
HOME BGOSUB DELETE IF EDIT 51 6
NEXT HOME 51 6RUN HOME 52 6CLS
HOME ESCROLL HOME FAST EFOR
HOME SGN CALL EDIT LN PRINT A?W
DELETE TY)UDELETE 12 LN IF
DEF PROC ESCROLL HOME FAST 51 
SGN ;FAST EFOR HOME SGN CALL
EDIT LN PRINT A?DATA DELETE RE)
OFFDELETE 12 LN IF DEF PROC 54 
FAST ECLS HOME SGN CALL EDIT LN
PRINT A??DELETE QW)
20993 LN IF DEF PROC 55 FAST E
CLS HOME SGN CALL EDIT LN PRINT
A?<DELETE EE))DELETE 12 LN IF
DEF PROC LN .CHAR 51 6NEXT HOME
51 6RUN HOME 51 FAST 52 SGN
CALL EDIT LN PRINT A?XDELETE E4)
VDELETE 12 LN IF DEF PROC 52 
FAST 52 SGN CALL EDIT LN PRINT A
?**DELETE 21)CHR$ DELETE 12 LN
IF DEF PROC 51 FAST 5) SGN CALL
EDIT LN PRINT A?NEXT DELETE E4)
LET DELETE 12 LN IF DEF PROC 52 
FAST 5) SGN CALL EDIT LN PRINT A
?:DO 21)£DO 12 LN IF DEF PROC 5E
 FAST 52 SGN CALL EDIT LN PRINT
A?DDO E4)BDO 12 LN IF DEF PROC 5
A FAST 52 SGN CALL EDIT LN
PRINT A?ERR MSGS DO 21)PIDO 12 
LN IF DEF PROC 5E FAST 5) SGN
CALL EDIT LN PRINT A?READ DO E4)
DATA DO 12 LN IF DEF PROC 5A 
FAST 5) SGN CALL EDIT LN PRINT A
??DO 21)?DO 12 LN IF DEF PROC
LN .CHAR ESCROLL HOME 6COPY
HOME EFOR HOME 67BREAK 51 LN ?
UNDRAW 6EBREAK 5= LN =RNDE TO
HOME 6"BREAK E TO HOME FAST 5K4
SGN BGOSUB DELETE PAUSE VDO 5K46
"BREAK 5COS  FAST 5S FAST E"
BREAK SGN LN )TRACE FAST 5HOME  
SGN LN CLEAR DEF PROC SGN BFOR
GOSUB DELETE 6"BREAK ESTOP HOME
FAST 52 SGN BGOSUB DELETE PAUSE
RUN DO ESTOP HOME FAST 51 SGN B
FOR GOSUB DELETE 6STOP HOME 51 
FAST E"BREAK SGN 7GOSUB DO LOAD
HOME 6LET HOME 54 FAST 5+ SGN
CALL EDIT LN PRINT A?1LOOP TIME:
 )*LOOP 1T LN IF DEF PROC E"
BREAK FAST ELOAD HOME SGN BFOR
GOSUB DELETE LN INPUT DEF PROC ?
TLOOP  )SLOOP 11 LN IF DEF PROC
ENEXT HOME FAST 51 SGN ;6NEXT
HOME ENEXT HOME FAST ESTOP HOME
SGN BGOSUB DELETE PAUSE *LOOP 5 
 6NEXT HOME 51 GOSUB UNDRAW <=
HOME DDSTR$ LN NOSTALGIC DPOKE
FOR SGN FAST ENEXT HOME SGN LN E
EDIT ABS PLOOP 51 FAST 52 SGN
CALL EDIT LN PRINT A?:LOOP E4)£
LOOP 12 LN IF DEF PROC 52 FAST 5
2 SGN CALL EDIT LN PRINT A?D
LOOP 21)BLOOP 12 LN IF DEF PROC
LN .CHAR 51 GOSUB UNDRAW <=HOME
DDSTR$ LN NOSTALGIC DPOKE FOR
SGN FAST 51 SGN BGOSUB DELETE
TAB -EXIT ENEXT HOME FAST 5  
SGN BGOSUB DELETE TAB -EXIT 51 
FAST 52 SGN CALL EDIT LN PRINT A
?LOAD LOOP 12)GOSUB LOOP 12 LN
IF DEF PROC 52 FAST 52 SGN CALL
EDIT LN PRINT A?SEXIT 4E)AEXIT 1
2 LN IF DEF PROC LN .CHAR 52 
GOSUB UNDRAW <=HOME DDSTR$ LN
NOSTALGIC DPOKE FOR SGN FAST E
NEXT HOME SGN LN EEDIT ABS PUSH
EXIT 51 FAST 5) SGN CALL EDIT
LN PRINT A?PIEXIT E4)RNDEXIT 12 
LN IF DEF PROC 52 FAST 5) SGN
CALL EDIT LN PRINT A?DATA EXIT 2
1)OFFEXIT 12 LN IF DEF PROC LN .
CHAR 52 GOSUB UNDRAW <=HOME DD
STR$ LN NOSTALGIC DPOKE FOR SGN
FAST 51 SGN BGOSUB DELETE TAB
ASN EXIT ENEXT HOME FAST 5  SGN
BGOSUB DELETE TAB ASN EXIT 51 
FAST 5) SGN CALL EDIT LN PRINT A
?7EXIT 12)5EXIT 12 LN IF
DEF PROC 52 FAST 5) SGN CALL
EDIT LN PRINT A?YEXIT 4E)WEXIT 1
2 LN IF DEF PROC LN .CHAR 57 
GOSUB UNDRAW <=HOME DDSTR$ LN
NOSTALGIC DPOKE FOR SGN FAST E
NEXT HOME SGN LN EEDIT ABS 1
UNTIL 5E FAST 52 SGN CALL EDIT
LN PRINT A?PLOT EXIT E4)POKE
EXIT 12 LN IF DEF PROC 5A FAST 5
2 SGN CALL EDIT LN PRINT A?)
UNTIL 21)?UNTIL 12 LN IF
DEF PROC LN .CHAR 57 GOSUB
UNDRAW <=HOME DDSTR$ LN
NOSTALGIC DPOKE FOR SGN FAST 51 
SGN BGOSUB DELETE TAB 5  SGN B
GOSUB DELETE TAB 52 SGN CALL
EDIT LN PRINT A?WHILE UNTIL 12)
EXIT UNTIL 12 LN IF DEF PROC 5A 
FAST 52 SGN CALL EDIT LN PRINT A
??UNTIL 4E)?UNTIL 12 LN IF
DEF PROC LN .CHAR 54 GOSUB
UNDRAW <=HOME DDSTR$ LN
NOSTALGIC DPOKE FOR SGN FAST E
NEXT HOME SGN LN EEDIT ABS SGN
UNTIL 5E FAST 5) SGN CALL EDIT
LN PRINT A?EUNTIL E4)CUNTIL 12 
LN IF DEF PROC 5A FAST 5) SGN
CALL EDIT LN PRINT A?VAL UNTIL 2
1)?UNTIL 12 LN IF DEF PROC LN .
CHAR 54 GOSUB UNDRAW <=HOME DD
STR$ LN NOSTALGIC DPOKE FOR SGN
FAST 51 SGN BGOSUB DELETE TAB M
WHILE ENEXT HOME FAST 5  SGN B
GOSUB DELETE TAB MWHILE 5E FAST
5) SGN CALL EDIT LN PRINT A?"
WHILE 12)DWHILE 12 LN IF
DEF PROC 5A FAST 5) SGN CALL
EDIT LN PRINT A?AWHILE 4E)8
WHILE 12 LN IF DEF PROC LN .
CHAR ERUN HOME LN ?UNDRAW 6RUN
HOME ECOPY HOME FAST ESCROLL
HOME SGN BGOSUB DELETE TAB
RESEQ WHILE E7BREAK FAST EFOR
HOME SGN BGOSUB DELETE TAB
RESEQ WHILE ?-WHILE ECOPY HOME
FAST E7BREAK SGN CALL EDIT LN
PRINT A?ELSE WHILE   )CLR STACK
WHILE 12 LN IF DEF PROC ECOPY
HOME FAST 51 SGN ;FAST E7BREAK
SGN CALL EDIT LN PRINT A?$WHILE
  )"WHILE 12 LN IF DEF PROC E
SCROLL HOME FAST EFOR HOME SGN
CALL EDIT LN PRINT A?CWHILE TY)A
WHILE 12 LN IF DEF PROC ESCROLL
HOME FAST 51 SGN ;FAST EFOR
HOME SGN CALL EDIT LN PRINT A?
TAN WHILE RE)SIN WHILE 12 LN IF
DEF PROC 54 FAST ECLS HOME SGN
CALL EDIT LN PRINT A?SLOW WHILE
  )LLIST WHILE 12 LN IF
DEF PROC 55 FAST ECLS HOME SGN
CALL EDIT LN PRINT A?COPY WHILE
  )CLEAR WHILE 12 LN IF
DEF PROC LN .CHAR ECLS HOME
FAST 52 SGN BGOSUB DELETE TAB 6
WHEN EEBREAK LN ?UNDRAW 6EBREAK
ECLS HOME FAST 5) SGN BGOSUB
DELETE TAB TWHEN EEBREAK LN ?
UNDRAW 6EBREAK ECLS HOME FAST EE
BREAK SGN ;6CLS HOME ERUN HOME
FAST 51 SGN BGOSUB DELETE TAB G
WHEN 54 FAST ECLS HOME SGN CALL
EDIT LN PRINT A?BREAK WHEN QW)ON
WHEN 12 LN IF DEF PROC 55 FAST E
CLS HOME SGN CALL EDIT LN PRINT
A? WHEN EE)IF DEF PROC ERUN
HOME FAST 51 LN ?UNDRAW SGN B
GOSUB DELETE TAB SQR WHEN 54 
FAST ECLS HOME SGN CALL EDIT LN
PRINT A?GWHEN QW)EWHEN 12 LN IF
DEF PROC 55 FAST ECLS HOME SGN
CALL EDIT LN PRINT A?SIN WHEN RR
)VAL WHEN 12 LN IF DEF PROC E
SCROLL HOME 6COPY HOME EFOR
HOME 67BREAK LN NOSTALGIC TRACE
LN RNDTRACE LN LINE TRACE LN N
AUTO ?GOTO WHEN A)FOR WHEN 11 
LN LINE TRACE LN XAUTO LN 2AUTO
ASN 1INDENT ?INDENT INDENT EFOR
HOME FAST 52 SGN BGOSUB DELETE
ASN WINDENT EFOR HOME FAST 5A 
SGN BGOSUB DELETE ASN WINDENT E
FOR HOME FAST 5" SGN BGOSUB
DELETE ASN WINDENT EFOR HOME
FAST 5) SGN BGOSUB DELETE ASN W
INDENT ?INDENT INDENT ESCROLL
HOME FAST 51 SGN BGOSUB DELETE
PAUSE INDENT INDENT ESCROLL
HOME FAST 51 SGN BFOR GOSUB
DELETE 6SCROLL HOME LN
NOSTALGIC TRACE LN RNDTRACE LN
LINE TRACE LN NAUTO ?PUSH
INDENT Z)POP INDENT 11 LN LINE
TRACE LN XAUTO LN 2AUTO ASN FOR
HOME FAST 52 SGN BGOSUB DELETE
ASN TINDENT EFOR HOME FAST 5A 
SGN BGOSUB DELETE ASN TINDENT E
FOR HOME FAST 5" SGN BGOSUB
DELETE ASN TINDENT EFOR HOME
FAST 5) SGN BGOSUB DELETE ASN T
INDENT ?CHR$ INDENT ESCROLL
HOME FAST 5E SGN BGOSUB DELETE
ASN CHR$ INDENT IF CHR$ INDENT E
SCROLL HOME FAST 51 SGN ;6
SCROLL HOME LN NOSTALGIC TRACE
LN RNDTRACE LN LINE TRACE LN N
AUTO ?NEW INDENT N)FAST INDENT 1
1 LN LINE TRACE LN XAUTO LN 2
AUTO ASN CLS INDENT ?POKE RESEQ
ESCROLL HOME FAST 54 SGN BGOSUB
DELETE TAB ARESEQ EFOR HOME
FAST 52 SGN BGOSUB DELETE PAUSE
ARESEQ EFOR HOME FAST 51 SGN B
FOR GOSUB DELETE 6FOR HOME E
SCROLL HOME FAST 51 SGN BGOSUB
DELETE TAB *RESEQ EFOR HOME
FAST 5D SGN BGOSUB DELETE ASN *
RESEQ IF *RESEQ EFOR HOME FAST 5
2 SGN BGOSUB DELETE PAUSE *
RESEQ EFOR HOME FAST 51 SGN B
FOR GOSUB DELETE 6FOR HOME E
SCROLL HOME FAST 51 SGN BGOSUB
DELETE TAB $RESEQ EFOR HOME
FAST 5" SGN BGOSUB DELETE PAUSE
$RESEQ EFOR HOME FAST 51 SGN B
FOR GOSUB DELETE 6FOR HOME E
SCROLL HOME FAST 5E SGN BGOSUB
DELETE TAB TAN RESEQ EFOR HOME
FAST 5D SGN BGOSUB DELETE ASN
TAN RESEQ IF TAN RESEQ EFOR
HOME FAST 52 SGN BGOSUB DELETE
PAUSE TAN RESEQ EFOR HOME FAST 5
1 SGN BFOR GOSUB DELETE 6FOR
HOME ESCROLL HOME FAST 5E SGN B
GOSUB DELETE TAB POKE RESEQ E
FOR HOME FAST 5" SGN BGOSUB
DELETE PAUSE POKE RESEQ EFOR
HOME FAST 51 SGN BFOR GOSUB
DELETE 6FOR HOME LN NOSTALGIC
TRACE LN RNDTRACE LN LINE TRACE
LN NAUTO ?4OFFM)7OFF11 LN LINE
TRACE LN XAUTO LN 2AUTO ASN ;OFF
?£CURSOR ESCROLL HOME FAST 54 
SGN BGOSUB DELETE TAB ERR MSGS
OFFEFOR HOME FAST 5) SGN BGOSUB
DELETE ASN ERR MSGS OFFIF
ERR MSGS OFFEFOR HOME FAST 51 
SGN ;6FOR HOME ESCROLL HOME
FAST 51 SGN BGOSUB DELETE TAB ?
OFFEFOR HOME FAST 5A SGN BGOSUB
DELETE ASN ?OFFIF ?OFFEFOR HOME
FAST 51 SGN ;6FOR HOME ESCROLL
HOME FAST 51 SGN BGOSUB DELETE
TAB COFFEFOR HOME FAST 5S SGN B
GOSUB DELETE PAUSE COFFEFOR
HOME FAST 5) SGN BGOSUB DELETE
ASN COFFIF COFFEFOR HOME FAST 51
 SGN ;6FOR HOME ESCROLL HOME
FAST 5E SGN BGOSUB DELETE TAB
PEEK OFFEFOR HOME FAST 5A SGN B
GOSUB DELETE ASN PEEK OFFIF
PEEK OFFEFOR HOME FAST 51 SGN ;6
FOR HOME ESCROLL HOME FAST 5E 
SGN BGOSUB DELETE TAB £CURSOR E
FOR HOME FAST 5S SGN BGOSUB
DELETE PAUSE £CURSOR EFOR HOME
FAST 5) SGN BGOSUB DELETE ASN £
CURSOR IF £CURSOR EFOR HOME
FAST 51 SGN ;6FOR HOME ENEXT
HOME FAST 5  SGN BGOSUB DELETE
TAB 1CURSOR ?RNDDATA 51 GOSUB
UNDRAW <=HOME DDSTR$ LN
NOSTALGIC DPOKE FOR SGN FAST 51 
SGN BGOSUB DELETE TAB BREAK
CURSOR ESCROLL HOME FAST 51 SGN
BGOSUB DELETE TAB BREAK CURSOR E
FOR HOME FAST 52 SGN BGOSUB
DELETE TAB BREAK CURSOR 51 
GOSUB UNDRAW <=HOME DDFAST 5  
SGN FOR LN OFFDPOKE 52 GOSUB
UNDRAW <=HOME DDSTR$ LN
NOSTALGIC DPOKE FOR SGN FAST 51 
SGN BGOSUB DELETE TAB HCURSOR E
SCROLL HOME FAST 51 SGN BGOSUB
DELETE TAB HCURSOR EFOR HOME
FAST 5) SGN BGOSUB DELETE TAB H
CURSOR 52 GOSUB UNDRAW <=HOME DD
FAST 5  SGN FOR LN OFFDPOKE 57 
GOSUB UNDRAW <=HOME DDSTR$ LN
NOSTALGIC DPOKE FOR SGN FAST 51 
SGN BGOSUB DELETE TAB PRINT
CURSOR ESCROLL HOME FAST 5E SGN
BGOSUB DELETE TAB PRINT CURSOR E
FOR HOME FAST 52 SGN BGOSUB
DELETE TAB PRINT CURSOR 57 
GOSUB UNDRAW <=HOME DDFAST 5  
SGN FOR LN OFFDPOKE 54 GOSUB
UNDRAW <=HOME DDSTR$ LN
NOSTALGIC DPOKE FOR SGN FAST 51 
SGN BGOSUB DELETE TAB XDATA E
SCROLL HOME FAST 5E SGN BGOSUB
DELETE TAB XDATA EFOR HOME FAST
5) SGN BGOSUB DELETE TAB XDATA 5
4 GOSUB UNDRAW <=HOME DDFAST 5  
SGN FOR LN OFFDPOKE ?AREAD 51 
GOSUB UNDRAW <=HOME DDSTR$ LN
NOSTALGIC DPOKE FOR SGN FAST 51 
SGN BGOSUB DELETE TAB ?DATA E
SCROLL HOME FAST 51 SGN BGOSUB
DELETE TAB ?DATA EFOR HOME FAST
57 SGN BGOSUB DELETE TAB ?DATA ?
"USER 52 GOSUB UNDRAW <=HOME DD
STR$ LN NOSTALGIC DPOKE FOR SGN
FAST 51 SGN BGOSUB DELETE TAB M
DATA ESCROLL HOME FAST 51 SGN B
GOSUB DELETE TAB MDATA EFOR
HOME FAST 5( SGN BGOSUB DELETE
TAB MDATA ?"USER 51 GOSUB
UNDRAW <=HOME DDSTR$ LN
NOSTALGIC DPOKE FOR SGN FAST 51 
SGN BGOSUB DELETE TAB FOR DATA E
SCROLL HOME FAST 52 SGN BGOSUB
DELETE TAB FOR DATA EFOR HOME
FAST 52 SGN BGOSUB DELETE TAB
FOR DATA ?"USER 52 GOSUB UNDRAW
<=HOME DDSTR$ LN NOSTALGIC
DPOKE FOR SGN FAST 51 SGN B
GOSUB DELETE TAB 8RESTORE E
SCROLL HOME FAST 52 SGN BGOSUB
DELETE TAB 8RESTORE EFOR HOME
FAST 5) SGN BGOSUB DELETE TAB 8
RESTORE ?"USER 57 GOSUB UNDRAW
<=HOME DDSTR$ LN NOSTALGIC
DPOKE FOR SGN FAST 51 SGN B
GOSUB DELETE TAB DATA RESTORE E
SCROLL HOME FAST 5T SGN BGOSUB
DELETE TAB DATA RESTORE EFOR
HOME FAST 52 SGN BGOSUB DELETE
TAB DATA RESTORE ?"USER 54 
GOSUB UNDRAW <=HOME DDSTR$ LN
NOSTALGIC DPOKE FOR SGN FAST 51 
SGN BGOSUB DELETE TAB -RESTORE E
SCROLL HOME FAST 5T SGN BGOSUB
DELETE TAB -RESTORE EFOR HOME
FAST 5) SGN BGOSUB DELETE TAB -
RESTORE ?"USER 57 GOSUB UNDRAW
<=HOME DDSTR$ LN NOSTALGIC
DPOKE FOR SGN FAST 51 SGN B
GOSUB DELETE TAB INT RESTORE E
SCROLL HOME FAST 5E SGN BGOSUB
DELETE TAB INT RESTORE EFOR
HOME FAST 57 SGN BGOSUB DELETE
TAB INT RESTORE ?"USER 54 GOSUB
UNDRAW <=HOME DDSTR$ LN
NOSTALGIC DPOKE FOR SGN FAST 51 
SGN BGOSUB DELETE TAB AREAD E
SCROLL HOME FAST 5E SGN BGOSUB
DELETE TAB AREAD EFOR HOME FAST
5( SGN BGOSUB DELETE TAB AREAD ?
"USER ESCROLL HOME FAST 52 SGN B
GOSUB DELETE PAUSE EREAD E
SCROLL HOME FAST 5T SGN BGOSUB
DELETE ASN EREAD IF EREAD ?H
READ ?GREAD EFOR HOME FAST ECLS
HOME FAST 51 SGN ;SGN BGOSUB
DELETE TAB ERR MSGS READ ?<HOME
EFOR HOME FAST 51 SGN ;FAST E
CLS HOME SGN BGOSUB DELETE TAB
OFFREAD ?<HOME EFOR HOME FAST 51
 SGN ;FAST ECLS HOME FAST 51 
SGN ;SGN BGOSUB DELETE TAB ?
READ ?<HOME EFOR HOME FAST ECLS
HOME SGN BGOSUB DELETE TAB G
READ ?<HOME E TO HOME FAST 51 
SGN ;6 TO HOME 51 GOSUB UNDRAW
<=HOME DDSTR$ LN NOSTALGIC
DPOKE FOR SGN FAST 5  SGN B
GOSUB DELETE TAB  NOSTALGIC 52 
GOSUB UNDRAW <=HOME DDSTR$ LN
NOSTALGIC DPOKE FOR SGN FAST 5  
SGN BGOSUB DELETE TAB  
NOSTALGIC 57 GOSUB UNDRAW <=
HOME DDSTR$ LN NOSTALGIC DPOKE
FOR SGN FAST 5  SGN BGOSUB
DELETE TAB  NOSTALGIC 54 GOSUB
UNDRAW <=HOME DDSTR$ LN
NOSTALGIC DPOKE FOR SGN FAST 5  
SGN BGOSUB DELETE TAB  
NOSTALGIC ?=NOSTALGIC ELOAD
HOME 76LOAD HOME GOSUB OFFLET
HOME BGOSUB DELETE IF ELOOP ?
INDENT HOME E TO HOME FAST E"
BREAK FAST ELOAD HOME ERR MSGS
EDIT LPRINT SGN ;FAST PUSH
NOSTALGIC SGN BFOR GOSUB DELETE
6 TO HOME 5" FAST 5  SGN CALL
EDIT LN PRINT A??NOSTALGIC YOU C
OMPLETED A SNUNCH SCREEN,  KEEP 
IT UP.   SCORE:)ZNOSTALGIC 1
LN IF DEF PROC E TO HOME FAST 5C
 SGN ;6 TO HOME E TO HOME LN
INPUT DEF PROC LN .CHAR LN X
ERROR LN XERROR ?ONOSTALGIC PRES
S ENTER TO CONTINUE...),
NOSTALGIC 1LN IF DEF PROC LN .
CHAR LN NOSTALGIC TRACE LN RND
TRACE LN LINE TRACE LN NAUTO ?
INT NOSTALGIC )INT NOSTALGIC 1  
LN LINE TRACE LN XAUTO LN 2AUTO
ASN SLOW NOSTALGIC ?""NOSTALGIC
LN NOSTALGIC TRACE LN RNDTRACE
LN LINE TRACE LN NAUTO ?NEXT
NOSTALGIC )NEXT NOSTALGIC 1  LN
LINE TRACE LN XAUTO LN 2AUTO
TAB AUSER ?SLOW NOSTALGIC ?Y
END PROC 5: FAST 5  SGN CALL
EDIT LN PRINT A?VUSER EXPLODING 
PILL GOT YOU, TOO BAD*).USER 1
LN IF DEF PROC LN .CHAR 5" FAST
5  SGN CALL EDIT LN PRINT A?
USER USER **SNUNCH**)WHILE USER
1S LN IF DEF PROC 5£ FAST 5  
SGN CALL EDIT LN PRINT A?>USER S
SSSSSSSSSBY STEVEN REID)?USER 1/
 LN IF DEF PROC ECOPY HOME FAST
E7BREAK SGN CALL EDIT LN PRINT A
?HUSER   )FUSER 12 LN IF
DEF PROC ECOPY HOME FAST 51 SGN
;FAST E7BREAK SGN CALL EDIT LN
PRINT A?EXP USER   )ATN USER 12 
LN IF DEF PROC 54 FAST ECLS
HOME SGN CALL EDIT LN PRINT A?
DIM USER QW)SCROLL USER 12 LN
IF DEF PROC 55 FAST ECLS HOME
SGN CALL EDIT LN PRINT A?4*RR)2*
12 LN IF DEF PROC ESCROLL HOME
FAST EFOR HOME SGN CALL EDIT LN
PRINT A?3*R7)1*12 LN IF
DEF PROC ESCROLL HOME FAST 51 
SGN ;FAST EFOR HOME SGN CALL
EDIT LN PRINT A?RND*1W)Y*12 LN
IF DEF PROC 5  FAST 51 SGN CALL
EDIT LN PRINT A?**GAME OVER)
INDENT *1D LN IF DEF PROC LN .
CHAR 51 GOSUB UNDRAW <=HOME DD
STR$ LN NOSTALGIC DPOKE FOR SGN
FAST 5  SGN BGOSUB DELETE TAB =*
E TO HOME FAST 5S SGN ;6 TO
HOME 52 GOSUB UNDRAW <=HOME DD
STR$ LN NOSTALGIC DPOKE FOR SGN
FAST 5  SGN BGOSUB DELETE TAB U*
E TO HOME FAST 5S SGN ;6 TO
HOME 57 GOSUB UNDRAW <=HOME DD
STR$ LN NOSTALGIC DPOKE FOR SGN
FAST 5  SGN BGOSUB DELETE TAB
STEP *E TO HOME FAST 5S SGN ;6
TO HOME 54 GOSUB UNDRAW <=HOME
DDSTR$ LN NOSTALGIC DPOKE FOR
SGN FAST 5  SGN BGOSUB DELETE
TAB TONE TO HOME FAST 5S SGN ;6
TO HOME E TO HOME FAST ENOT
HOME SGN BGOSUB DELETE PAUSE ,ON
E TO HOME 6NOT HOME 5( FAST 5  
SGN CALL EDIT LN PRINT A?KONSCOR
E:)EON1T LN IF DEF PROC E TO
HOME LN INPUT DEF PROC 5> FAST 5
  SGN CALL EDIT LN PRINT A?LOOP
ONBEST:)DEF PROC ON15 LN IF
DEF PROC ENOT HOME LN INPUT
DEF PROC E TO HOME FAST ENOT
HOME SGN BGOSUB DELETE TAB (ON?R
ON  **A NEW RECORD**)?ON1LN
IF DEF PROC LN .CHAR LN
NOSTALGIC TRACE LN RNDTRACE LN
LINE TRACE LN NAUTO ?3ON)3ON1  
LN LINE TRACE LN XAUTO LN 2AUTO
ASN OON?(ON5+ FAST 5  SGN CALL
EDIT LN PRINT A?SLOW ONPRESS ENT
ER TO BEGIN A NEW GAME )CODE ON1
LN IF DEF PROC 55 LN =RNDLN
NOSTALGIC TRACE LN RNDTRACE LN
LINE TRACE LN NAUTO ?2HOME )2
HOME 1  LN LINE TRACE LN XAUTO
LN 2AUTO ASN *HOME ?MEND PROC 5+
 FAST 5  SGN CALL EDIT LN PRINT
A?CHAR HOME PRESS ENTER TO BEGIN
 A NEW GAME )BHOME 1LN IF
DEF PROC 55 LN =RND?OON5: FAST 5
  SGN CALL EDIT LN PRINT A?R
HOME NOT ENOUGH PILLS, GOOD TRY*
)PUSH HOME 1LN IF DEF PROC LN
.CHAR ?"USER 5: FAST 5  SGN
CALL EDIT LN PRINT A?ZHOME GHOST
 GOT YOU,   TRY AGAIN**)7HOME 10
 LN IF DEF PROC LN .CHAR ?CHAR
USER TAN         64  LOOP ELSE  
     A   4   D   A A 1   1   2  
 4   D   COPY COPY       9 7
WHEN  REM       MCODER II       
  COPYRIGHT 1983   D C THRELFALL
 COMPILER AT 17300 PROG AT 20500
  10 REM **** SNUNCH ML ****
  20 REM ** SLR 1983/2013 **
  30 SAVE "SNML"
  40 PRINT AT 11,0;"**SNUNCH**";
AT 12,0;"SSSSSSSSSSBY STEVEN REI
D"
  50 LET O=1
  60 LET N=1
  70 IF O=1 THEN PRINT AT 4,0;"W
";AT 5,0;"E";AT 4,0;"QW";AT 5,0;
"RR"
  80 IF O=-1 THEN PRINT AT 4,0;"
Y";AT 5,0;"E";AT 4,0;"TY";AT 5,0
;"RE"
  90 FOR A=0 TO 29
 100 IF O=1 AND N=1 THEN PRINT
AT 4,A;" QW";AT 5,A;" EE"
 110 IF O=1 AND N=-1 THEN PRINT
AT 4,A;" QW";AT 5,A;" RR"
 120 IF O=-1 THEN PRINT AT 4,A;"
 TY";AT 5,A;" RE"
 130 LET N=-N
 140 IF INKEY$<>"" THEN RAND
USR 20500
 150 NEXT A
 160 IF O=1 THEN PRINT AT 4,30;"
 Q";AT 5,30;" R";AT 4,31;" ";AT
5,31;" "
 170 IF O=-1 THEN PRINT AT 4,30;
T";AT 5,30;" R";AT 4,31;" ";
AT 5,31;" "
 180 LET O=-O
 190 GOTO 70